본문 바로가기

정수론35

[백준] 11653번: 소인수 분해 (C++) 11653번: 소인수 분해 문제 ) 정수 N이 주어졌을 때, 소인수분해하는 프로그램을 작성하시오. 입력 : 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. 출력 : N의 소인수분해 결과를 한 줄에 하나씩 오름차순으로 출력한다. N이 1인 경우 아무것도 출력하지 않는다. 풀이) 소인수 분해를 하는 코드를 만들어 풀었다. 해당 코드에 대한 설명은 밑에 코드와 함께 주석으로 적어두었다. 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 #include using namespace std; int main() { int n, x; cin >> n; // n은 변하면 안되므로 x를 따로 만들어 둔다.. 2022. 6. 27.
[백준] 6064번: 카잉 달력 (python) 6064번: 카잉 달력 문제 ) 최근에 ICPC 탐사대는 남아메리카의 잉카 제국이 놀라운 문명을 지닌 카잉 제국을 토대로 하여 세워졌다는 사실을 발견했다. 카잉 제국의 백성들은 특이한 달력을 사용한 것으로 알려져 있다. 그들은 M과 N보다 작거나 같은 두 개의 자연수 x, y를 가지고 각 년도를 와 같은 형식으로 표현하였다. 그들은 이 세상의 시초에 해당하는 첫 번째 해를 로 표현하고, 두 번째 해를 로 표현하였다. 의 다음 해를 표현한 것을 이라고 하자. 만일 x 2022. 4. 18.
[백준] 1644번: 소수의 연속합 (python) 1644번: 소수의 연속합 문제 ) 하나 이상의 연속된 소수의 합으로 나타낼 수 있는 자연수들이 있다. 몇 가지 자연수의 예를 들어 보면 다음과 같다. 3 : 3 (한 가지) 41 : 2+3+5+7+11+13 = 11+13+17 = 41 (세 가지) 53 : 5+7+11+13+17 = 53 (두 가지) 하지만 연속된 소수의 합으로 나타낼 수 없는 자연수들도 있는데, 20이 그 예이다. 7+13을 계산하면 20이 되기는 하나 7과 13이 연속이 아니기에 적합한 표현이 아니다. 또한 한 소수는 반드시 한 번만 덧셈에 사용될 수 있기 때문에, 3+5+5+7과 같은 표현도 적합하지 않다. 자연수가 주어졌을 때, 이 자연수를 연속된 소수의 합으로 나타낼 수 있는 경우의 수를 구하는 프로그램을 작성하시오. 입력 :.. 2022. 2. 18.