[오일러프로젝트] 51번문제
13 이라는 두 자리 소수의 첫째 자리 숫자를 여러가지로 바꿨을 때 가능한 결과는 모두 9개이고, 그 중에서 13, 23, 43, 53, 73, 83의 여섯 개가 소수입니다.56003 이라는 소수의 3번째와 4번째 자리는 둘 다 0으로 같은데, 이것을 다른 숫자로 바꿔보면 아래와 같이 모두 10개 중에서 7개가 소수입니다. 이것은 이런 식으로 하여 7개의 소수가 나타나는 첫번째 경우입니다.56003, 56113, 56333, 56443, 56663, 56773, 56993위의 예처럼 원래의 일부를 동일한 숫자로 치환했을 때, 10개 중에서 8개가 소수가 되는 가장 작은 소수를 구하세요. 치환하는 자리는 인접하지 않아도 되고, 가장 앞부분을 치환하는 경우 거기에 0 은 올 수 없습니다. 문제에러.. 8개가..
더보기
[오일러프로젝트] 50번문제
41은 소수이면서 다음과 같은 6개의 연속된 소수의 합으로도 나타낼 수 있습니다.41 = 2 + 3 + 5 + 7 + 11 + 13이것은 100 이하에서는 가장 길게 연속된 소수의 합으로 이루어진 소수입니다.1000 이하에서는 953이 연속된 소수 21개의 합으로 가장 깁니다.1백만 이하에서는 어떤 소수가 가장 길게 연속되는 소수의 합으로 표현될 수 있습니까? 이거 결국은 풀지못하고 풀이를 찾아본문제... 소수배열 만들어 놓고 for 2개로 돌리면 되기는 하는데 100만이하의 소수면 거의 끝나지도 않을 것 같고...해서 외국 블로거의 풀이를 보고 이를 분석하는 것으로 만족...ㅋ 1~100까지의 예를들면 소수배열 : [2,3,5,7,11,13,17,19,23,29,31...] 각 소수의 합 : [2,5,..
더보기
[오일러프로젝트] 45번문제
삼각수, 오각수, 육각수는 아래 식으로 구할 수 있습니다. 삼각수 Tn = n (n + 1) / 2 1, 3, 6, 10, 15, ... 오각수 Pn = n (3n − 1) / 2 1, 5, 12, 22, 35, ... 육각수 Hn = n (2n − 1) 1, 6, 15, 28, 45, ... 여기서 T285 = P165 = H143 = 40755 가 됩니다. 오각수와 육각수도 되는, 그 다음으로 큰 삼각수를 구하세요. 아.. 이게 삼각수,오각수,육각수 판별식을 사용해서 40755부터 loop를 돌리면 찾으니 답이 안나온다. --; 결국 예전에 썼던 방법중 하나처럼 우선 셋을 만들어 놓고 교차검색. 일단 회사에서 파이썬만으로 풀었고.... 집에서 루비, 펄로풀어야 하는데 Set의 교집합을 어떻게 구현하나..
더보기
[오일러프로젝트] 44번문제
오각수는 Pn = n (3n − 1)/2 라는 공식으로 구할 수 있고, 처음 10개의 오각수는 다음과 같습니다. 1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ... 위에서 P4 + P7 = 22 + 70 = 92 = P8이 됨을 볼 수 있습니다. 하지만 두 값의 차인 70 − 22 = 48 은 오각수가 아닙니다. 합과 차도 모두 오각수인 두 오각수 Pj, Pk 에 대해서, 그 차이 D = | Pk − Pj | 는 가장 작을 때 얼마입니까? 위키피디아에 오각수를 찾아보면 오각수를 판별하는 공식이 있다. 어떤 수 n에 대해서 x= sqrt(24*n + 1) + 1 / 6에 나오는 x에 대해 x == int(x)를 만족하면 n은 오각수이다. 이것으로 오각수를 판별하고, 차가 가장 작..
더보기