Home » BigNumber

BigNumber

오일러 프로젝트 66

오일러 프로젝트 66번 문제는 펠 방정식의 최소해에 관한 문제이다. 나이브하게 접근했다가는 결코 풀어낼 수 없을 수준으로 시간이 많이 걸린다. 그리고 그나마 빠른 해법 역시 구현하기 위해 여러 가지 지식과 스킬이 동원된다.  접근 방법을 알고 있더라도 구현이 만만치 않은, 1번부터 현재까지는 최고 난이도의 문제라 할 수 있다. 통상 오일러 프로젝트의 문제들은 순서에 맞게 풀어나갈 필요는 없지만, 이 문제 만큼은 57번, 64번, 65번을 풀 때의 지식이 그대로 요구된다.
더 보기 »오일러 프로젝트 66

Pages: 1 2

Swift – 큰 수의 덧셈과 곱셈 구현하기

프로젝트 오일러의 몇몇 문제는 큰 수의 덧셈이나 곱셈의 계산이 필요한 경우가 있다. 파이썬이나 하스켈과 같이 정수타입이 기본적으로 바이트 크기의 제약이 없는 언어에서는 이는 별다른 문제가 되지 않지만, 그외의 언어에서는 좀 까다로운 문제가 된다.  예를 들어 50자리 숫자 100개의 합을 계산하는 문제 같은 경우에 파이썬에서는 50자 짜리 숫자 문자열을 int 타입으로 캐스팅해서 합해버리면 그만이지만, Swift와 같은 언어로 이렇게 풀 수는 없다. 해당 문제의 풀이에서는 손으로 덧셈을 해 나가는 방식을 코드로 구현해서 풀었는데, 이후로도 큰 수를 계산해야 하는 문제가 자주 나온다. 수가… 더 보기 »Swift – 큰 수의 덧셈과 곱셈 구현하기

오일러 프로젝트 20

이번 문제는 100!의 모든 자리수 숫자들의 합을 구하는 것이다.   n! 이라는 표기법은 n × (n − 1) × … × 3 × 2 × 1을 뜻합니다. 예를 들자면 10! = 10 × 9 × … × 3 × 2 × 1 = 3628800 이 되는데, 여기서 10!의 각 자리수를 더해 보면 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27 입니다.     100! 의 자리수를 모두 더하면 얼마입니까?””” (http://euler.synap.co.kr/prob_detail.php?id=20) 접근 팩토리얼 함수는… 더 보기 »오일러 프로젝트 20