a
[알고리즘] 8658. Summation
박은성/
2022. 3. 9. 09:36
반응형
https://swexpertacademy.com/main/code/problem/problemDetail.do?problemLevel=3&contestProbId=AW1lwyh6WPwDFARC&categoryId=AW1lwyh6WPwDFARC&categoryType=CODE&problemTitle=&orderBy=PASS_RATE&selectCodeLang=CCPP&select-1=3&pageSize=10&pageIndex=2
SW Expert Academy 8658. Summation
풀이 방법
각 자리수의 덧셈을 sum[i]에 담는다.
#include <stdio.h>
int main(void)
{
int test_case;
int T; int num = 0;
int remain =1, divisor =1;
int sum[10] ={0,};
scanf("%d", &T);
for (test_case = 1; test_case <= T; ++test_case)
{
for(int i =0;i<10; i++){
scanf("%d", &num);
if(num / (divisor*1000000) > 0){
sum[i] += (num/ (divisor*1000000));
num = num% (divisor*1000000);}
if(num/ (divisor*100000) > 0){
sum[i] += (num/ (divisor*100000));
num = num% (divisor*100000);
}
if(num/ (divisor*10000) > 0){
sum[i] += (num/ (divisor*10000));
num = num% (divisor*10000);
}
if(num/ (divisor*1000) > 0){
sum[i] += (num/ (divisor*1000));
num = num% (divisor*1000);
}
if(num/ (divisor*100) > 0){
sum[i] += (num/ (divisor*100));
num = num% (divisor*100);
}
if(num/ (divisor*10) > 0){
//printf("%d\t%d\t%d\n", test_case, i, sum[i]);
sum[i] += (num/ (divisor*10));
num = num% (divisor*10);
}
if(num/ (divisor*1) > 0){
sum[i] += (num/ (divisor*1));
num = num% (divisor*1);
}
}
//for(int i=0;i<10; i++) printf("%d\t",sum[i]);
int max =sum[0]; int min =sum[0];
for(int i =0; i<10; i++){
max = max> sum[i] ? max :sum[i];
min = min< sum[i] ? min: sum[i];
}
printf("#%d %d %d\n", test_case, max, min);
for(int i = 0; i<10; i++) sum[i] = 0;
}
return 0;
}
반응형