문제(요약)
입력받은 10개의 숫자의 각 자리수를 더하여 그 중 최대값과 최소값을 화면에 출력하라.
풀이
각 자리의 숫자는 나머지 연산자를 통해 쉽게 구할 수 있습니다.
#include <iostream>
#include <algorithm>
using namespace std;
FILE* stream;
const int NUM_INPUT = 10;
int main(void) {
freopen_s(&stream, "sample_input.txt", "r", stdin);
int T;
cin >> T;
for (int t = 1; t <= T; t++) {
int min = 1000000 + 1;
int max = 0;
int n;
for (int j = 0; j < NUM_INPUT; j++) {
cin >> n;
int sum = 0;
while (n > 0) {
int dig = (n % 10);
n /= 10;
sum += dig;
}
if (sum > max) {
max = sum;
}
if (sum < min) {
min = sum;
}
}
cout << "#" << t << " " << max << " " << min << endl;
}
return 0;
}
출처
'알고리즘 트레이닝 > SW Expert Academy' 카테고리의 다른 글
9839. 최고의 쌍 (0) | 2020.05.02 |
---|---|
8676. 동현이와 한결이는 아이돌 (0) | 2019.11.06 |
8821. 적고 지우기 (0) | 2019.11.01 |
1206. [S/W 문제해결 기본] 1일차 - View (0) | 2019.09.16 |
1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 (0) | 2019.09.16 |