본문 바로가기

수학7

[백준 11653] 알고리즘 22일차 : 소인수분해 https://www.acmicpc.net/problem/11653 11653번: 소인수분해 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net 수학3 C++ 접근 방법 정수 N을 2부터 나눠가는데 이를 나눠서 0이면 계속 같은 수로 나누면서 출력하면 오름차순으로 소인수분해 결과를 출력할 수 있다. 가장 작은 소수부터 시작해서 그 수로 더이상 나눠지지 않으면 나누는 수를 1 증가시켜 나눠보는 과정을 반복하고 N이 1이하가 되면 반복문을 나온다. 소스코드 #include using namespace std; int main(){ int N; cin >> N; int d = 2; while(N > 1){ while(N%d == 0){ cout 2020. 7. 14.
[백준 1037] 알고리즘 21일차 : 약수 https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되� www.acmicpc.net 수학3 C++ 분명 실버라고 알고 있는데 생각보다 쉬웠다. 근데 정렬하지 않으면 틀려서 sort함수로 급하게 정렬해서 했더니 맞았다. 첫째줄에 모든 약수의 개수가 주어지고, 둘째줄에 모든 약수가 주어지면 N을 구하는 문젠데 그럼 정렬해서 최솟값과 최댓값을 곱하면 N이 나오는 간단한 문제였다. 소스코드 #include #include using namespace std; int main().. 2020. 7. 13.
반응형