Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Gundam
- Project Euler 해답
- OS 그래픽 처리
- 30일
- os 만들기
- 맛집
- 쉽게 배우는 운영체제 풀이
- hg
- OS강의
- 운영체제
- 프라모델
- project euler
- 쉽게 배우는 운영체제
- 건담
- OS 제작
- 쉽게 배우는 운영체제 연습문제
- 운영체제 제작
- OS 구조와 원리
- 운영체제 만들기
- 건프라
- OS 강의
- 건담 엑스포
- OS
- 맛집 추천
- 쉽게 배우는 운영체제 솔루션
- Project Euler Problem
- 운영체제 문제 풀이
- 운영체제 정리
- 건담 프라모델
- rg
Archives
- Today
- Total
밤색모자이크의 개발이야기
Project Euler Problem 16 : 2^1000의 각 자리수를 모두 더하면? 본문
Project Euler 문제를 해답을 포스팅합니다.
※ 주의 : 최적화는 할 수 있는 만큼했습니다. 따라서 속도면에서는 많이 부족합니다.
문제를 푸는데 목표를 두었고 또한 TDD를 최대한 활용하였습니다.
몇가지 문제의 경우 TDD를 안한 경우도 있습니다.
혹시, 최적화 또는 속도 증가에 대한 부분을 지적해주실 분은 너무나도 감사합니다.
Project Euler Problem 16
215 = 32768 의 각 자리수를 더하면 3 + 2 + 7 + 6 + 8 = 26 입니다.
21000의 각 자리수를 모두 더하면 얼마입니까?
이 문제는 기존에 문자열 연산을 통하여 구하였던 13번 문제를 재사용하여 풀었습니다.
Source Code
Main Class Code
public class Main {
public static void main(String [] args) { WithString_Calcurator calcurator = new WithString_Calcurator(); int [] array = { 2 }; int result = 0; for(int i=1; i<1000; i++) { array = calcurator.add(array, array); array = calcurator.clean(array); } for(int i=0; i<array.length; i++) { System.out.print(array[i]); result += array[i]; } System.out.println(); System.out.println(result); } }
'Algorithm > Project Euler' 카테고리의 다른 글
Project Euler Problem 17 : 1부터 1000까지 영어로 썼을 때 사용된 글자의 개수는? (0) | 2017.06.19 |
---|---|
Project Euler Problem 15 : 20×20 격자의 좌상단에서 우하단으로 가는 경로의 수 (0) | 2017.06.19 |
Project Euler Problem 14 : 백만 이하로 시작하는 우박수 중 가장 긴 과정을 거치는 것은? (0) | 2017.06.19 |
Project Euler Problem 13 : 50자리 숫자 100개를 더한 값의 첫 10자리 구하기 (0) | 2017.06.19 |
Project Euler Problem 12 : 500개 이상의 약수를 갖는 가장 작은 삼각수는? (0) | 2017.06.19 |
Comments