2010-11-22 4 views
0

배열의 값이 256입니다. 256 가지 값은 신비한 방식으로 계산되었으며 0-3을 포함합니다. 내 프로그램의 효율성을 높이기 위해 배열에서 실제로 찾지 않고 인덱스를 사용하여 배열의 결과를 계산할 수 있습니다.배열의 패턴을 찾는 데 도움이되는 정보

기본적으로이 프로그램은 나에게 배열에서 찾은 인덱스를 제공하지만 실제로 색인 번호 자체를 사용하여 인덱스에 포함될 내용을 계산할 수 있다는 것을 알고 있습니다. 예를

a[0] = 3, a[1] = 2, a[2] = 1, ... , a[254] = 1, a[255] = 1 

실제로 여기에 계산을 요구하지만, 배열의 모든 번호로 찾는 게 아니에요 들어

, 패턴을 알아내는 몇 가지 팁은 무엇입니까? 이것이 불충분하게 말하면 사과 드리며, 나는 어떤 질문이라도 해결하려고 노력할 것입니다.

+0

예를 들어 배열 이름입니다. 그것을 사용하는 코드. IQ (위반은 없지만 많은 IQ 테스트는 일련의 숫자를 제공하며 다음 값을 추측해야합니다.) – ruslik

+0

당신은 이것을 읽으면 문제를 더 잘 이해할 수 있습니다 : http://en.wikipedia.org/wiki/Kolmogorov_complexity – ruslik

답변

1

데이터를 생성 한 기능에 대한 아이디어가 없어도이 문제를 해결할 수있는 일반적인 방법은 없습니다. 실제로 256 값만 있고 데이터를 생성하는 함수가 계산상의 복잡성을 가지면 "효율성"—을 언급 했으므로 아마 배열로 유지하는 것이 더 효율적일 것입니다.

+0

그래, 대부분의 경우 속도 향상을위한 배열을 만듭니다. 대부분의 알고리즘은 단순한 검색보다 느립니다. – ruslik

관련 문제