Notice
Recent Posts
Recent Comments
Link
DY N DY
실력키우기 약수와배수(C++) 본문
1071 : 약수와 배수
제한시간: 1Sec 메모리제한: 32mb
해결횟수: 616회 시도횟수: 937회
주어진 정수들 중 입력받은 수의 약수와 배수의 합을 각각 출력하라.
[Copy]6 2 3 5 12 18 24 12 | [Copy]17 36 |
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 31 32 33 34 35 36 37 38 39 | /************************************************************** Problem: 1071 User: a132034 Language: C++ Result: Success Time:0 ms Memory:1740 kb ****************************************************************/ #include <iostream> using namespace std; int main() { int n; int * arr; int m; cin >> n; arr = new int [n]; for ( int i = 0; i < n; ++i) { cin >> arr[i]; } cin >> m; int sDiv = 0, sMul = 0; for ( int i = 0; i < n; ++i) { if (arr[i] % m == 0) sMul += arr[i]; if (m % arr[i] == 0) sDiv += arr[i]; } cout << sDiv << endl << sMul; return 0; } |
문제 이해만 하면 어려운 문제는 아니다.
두번째 줄에 있는 배열 중
세번째로 입력받은 수의 약수가 배열 내에 있다면 찾아서 찾은 값의 합을, 배수도 동일하게 찾은 값의 합을 출력하는 문제이다.
기본적으로 입력받은 값이 m일 때, m을 어떤 수로 나누었을 때 나머지가 0인 어떤 수가 약수이다.
배수는 어떤 수를 m으로 나누었을 때, 나머지가 0이 되는 어떤 수가 배수이다.
'PARK > ALGORITHM' 카테고리의 다른 글
실력키우기 문자마름모(JAVA) (0) | 2016.05.12 |
---|---|
실력키우기 별삼각형3(JAVA) (0) | 2016.05.11 |
알고리즘 내리막길(JAVA) (0) | 2016.05.08 |
실력키우기 10진수를 2 8 16진수로(C++) (0) | 2016.05.08 |
실력키우기 약수구하기(C++) (0) | 2016.05.03 |