Posts

프로젝트 오일러 64

제곱근을 연분수로 나타낼 때 반복 주기가 홀수인 경우 세기

문제 자세히 보기: [국어] [영어]

위키피디아에 연분수로 제곱근을 구하는 방법이 자세히 설명되어 있다.

%math \begin{aligned} \sqrt{N} = a_0 + \cfrac{1}{a_1 + \cfrac{1}{a_2 + \cfrac{1}{a_3 + \cfrac{1}{\ddots}}}} \end{aligned}

Read more...

영어

한국에서는 동기가 부족했다. 영어 공부를 시작했다가도 의욕이 금세 사그라졌다. 늘 '영어를 많이 사용할 수 있는 환경에 있으면 실력이 많이 늘 텐데...' 푸념했다. 영국에 도착했을 때만 해도 기대가 컸다. 어려움이 있었지만, 휴대폰도 개통했고, 집도 구했고, 은행 계좌도 만들었고, 큰 아이 학교도 등록했다. 아이들 데리고 병원에도 갔었고, 회사도 다니고 있다. 집에서 식구들과 말할 때 빼고는 거의 영어를 사용해야 한다. 영어를 많이 사용할 수 있는 환경, 내가 항상 바랐던 환경에 처한 것이다.

Read more...

프로젝트 오일러 63

n 자리 숫자이면서 n 제곱수도 되는 양의 정수는 모두 몇 개?

문제 자세히 보기: [국어] [영어]

어떤 수가 n 제곱수라면 x^n 으로 표현할 수 있다. 어떤 수가 n 제곱수인 동시에 n 자리 숫자가 되려면 다음 부등식을 만족해야 한다.

%math \begin{aligned} 10^{n-1} \le x^n \lt 10^n \quad (n \ge 1) \end{aligned}

Read more...

프로젝트 오일러 62

자릿수로 만든 순열 중에서 5개가 세제곱수인 가장 작은 숫자는?

문제 자세히 보기: [국어] [영어]

처음 떠오른 생각은 이렇다. 숫자를 증가시키면서 그 수자 세제곱수인지 확인하고, 세제곱수라면 자릿수로 순열을 만들어 그 중 세제곱수인 것만 골라내서 다섯 개가 되는지 확인하는 방법을 생각할 수 있다. 그러나 이 방법은 쉽지도 않고 비효율적이다. 숫자의 대부분이 세제곱수가 아니고 세제곱수의 순열도 대부분 세제곱수가 아닐 것이기 때문이다.

Read more...

프로젝트 오일러 61

순환적인 성질을 갖는 4자리 다각수 여섯 개의 합

문제 자세히 보기: [국어] [영어]

네 자리 다각수의 집합을 구한 다음 앞 두 자리를 키로 하여 맵을 만들어 놓으면 꼬리를 무는 수를 쉽게 찾을 수 있다.

Read more...

프로젝트 오일러 60

다섯 소수 중 어떤 두 개를 이어붙여도 소수가 되는 수 찾기

문제 자세히 보기: [국어] [영어]

이 문제를 공략하는 기본 아이디어는 다음과 같다.

  1. 적정 범위의 소수 집합 ps1을 미리 구한다.
  2. ps1에서 두 수를 골라 앞/뒤로 이어붙여도 소수가 되는 쌍의 집합 ps2를 구한다.

Read more...

프로젝트 오일러 59

XOR 방식으로 암호화된 메시지 깨기

문제 자세히 보기: [국어] [영어]

암호화 키가 영어 소문자 세 개로 되어 있으므로, aaa부터 zzz까지 모두 시도해본다 해도 경우의 수는 26^3=17,576 밖에 되지 않는다. 이 정도면 무차별 대입법으로 공략해도 충분할 것 같다.

Read more...

프로젝트 오일러 58

나선모양 격자의 대각선상에 있는 소수의 비율 추적하기

문제 자세히 보기: [국어] [영어]

문제 28에서 나선모양 행렬의 대각선 요소를 구하는 공식을 유도했다. 그때는 나선모양이 시계 방향으로 돌았고 여기서는 나선모양이 반시계 방향으로 돌아 방향이 다르지만 문제를 푸는 데 영향을 끼치지는 않는다.

Read more...

프로젝트 오일러 57

제곱근 2의 연분수꼴 살펴보기

문제 자세히 보기: [국어] [영어]

문제에 있는 \sqrt 2 의 연분수꼴 수식은 다음과 같다.

%math \begin{aligned} \sqrt 2 = 1 + \cfrac{1}{2 + \cfrac{1}{2 + \cfrac{1}{2 + \cfrac{1}{ \ddots }}}} \end{aligned}

Read more...

프로젝트 오일러 56

a^b 형태의 자연수에 대해 자릿수 합의 최대값 구하기

문제 자세히 보기: [국어] [영어]

문제 16에서 만든 pow 함수를 이용하면 문제를 쉽게 풀 수 있다.

Read more...