big integer3 [Python]백준 #2824 최대공약수(큰수자료구조) 사실 이 문제는 복잡하게 문제를 풀어야 하지만,큰수(big integer)가 지원된다면, 유클리드 알고리즘으로 간단하게 구할 수 있습니다.보통은 제가 C/C++을 이용해서 풀이를 해오고 있지만, 큰수 자료구조를 사용하기 위해서 파이썬을 이용해보았습니다. https://www.acmicpc.net/problem/2824 만약 큰수 자료구조를 지원하지 않는다면, 가장 큰 수의 제곱근을 기준으로 해서 그 이하의 소수들에 대하여 공약수를 구하는 방식을 사용해야 합니다. 큰수 자료구조끼리의 연산이 시간이 오래 걸리지만, 이 문제에 있어서는 큰수 자료구조를 사용한다고 해서 문제가 될만큼은 아닙니다. """ baekjoon #2824 - by Aubrey Choi - created .. 2024. 8. 18. [C/C++] 프로젝트 오일러 #16 : 2의 1000승의 모든 자릿수 합 구하기(BigInteger) 사실 이번 프로그램은 Big integer를 사용할 줄 아느냐 아니냐에 따라서 달라진다고 봅니다.많은 언어가 기본으로 Big Integer를 지원하기 때문에, 언어에 따라서 구현 난이도도 차이가 많을겁니다. 문제에서 요구하는 것은 2의 1000제곱을 한 후, 모든 자리의 수를 합해서 결과를 내달라는 것입니다. 예를 들어서 python을 이용하면, 가볍게 이 문제를 해결할 수 있습니다. >>> 2**100010715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824.. 2015. 1. 13. [C/C++] 프로젝트 오일러 #13 BigInt 수의 합 구하기 프로젝트 오일러( Project Euler )의 13번 문제 Large Sum 은 다음과 같은 내용을 다룹니다:• 문제에서는 50자리로 이루어진 큰 수(Big integer) 100개가 주어집니다.• 이 100개의 수를 모두 더하여 얻은 합(누적값)을 구합니다.• 그렇게 구한 합의 가장 앞에서부터 10자리만을 추출하여 결과로 제시해야 합니다.즉, 핵심 요구사항은 “아래에 주어진 100개의 50자리 수를 모두 합한 뒤, 그 합의 처음 10자리를 구해라” 입니다. 사실 이번 문제는 꼼수로 푸는 것이 맞을 듯 합니다.BigInt 라이브러리를 이용해서 풀어도 되겠지만, 그렇게 하면 시간이 많이 걸리죠. 앞자리부터 10자리 숫자만 구하면 되는 것이니까요. 그렇게 하면 int형으로는 위험할지 몰라도 int64형으.. 2014. 12. 30. 이전 1 다음