N๊ฐ์ ์์ฐ์๊ฐ ์ ๋ ฅ๋๋ฉด ๊ฐ ์์ฐ์์ ์๋ฆฟ์์ ํฉ์ ๊ตฌํ๊ณ , ๊ทธ ํฉ์ด ์ต๋์ธ ์์ฐ์๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ์. ๊ฐ ์์ฐ์์ ์๋ฆฟ์์ ํฉ์ ๊ตฌํ๋ ํจ์๋ฅผ int digit_sum(int x)๋ฅผ ๊ผญ ์์ฑํด์ ํ๋ก๊ทธ๋๋ฐํ์ธ์.
์ ๋ ฅ
์ฒซ ์ค์ ์์ฐ์์ ๊ฐ์๊ฐ ์ฃผ์ด์ง๊ณ , ๊ทธ ๋ค์์ค์ N๊ฐ์ ์์ฐ์๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ์์ฐ์์ ํฌ๊ธฐ๋ 10,000,000๋ฅผ ๋์ง ์๋๋ค.
5
125 15232 79 1325 97
์ถ๋ ฅ
์๋ฆฟ์์ ํฉ์ด ์ต๋์ธ ์์ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. ์๋ฆฌ์์ ํฉ์ด ์ต๋์ธ ์์ฐ์๊ฐ ์ฌ๋ฌ ๊ฐ์ธ ๊ฒฝ์ฐ ๊ทธ ์ค ๊ฐ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ ์ถ๋ ฅํ๋ค.
97
1ํธ (๊ฐ์ ํ์ด)
#include <iostream>
using namespace std;
int digit_sum(int x){
int tmp, sum = 0;
while(x > 0){
tmp = x % 10;
sum += tmp;
x = x/10;
}
return sum;
}
int main(){
//freopen("input.txt", "rt", stdin);
int n, num, sum, max = -2147000000, res;
cin >> n;
for(int i = 0; i < n; ++i){
cin >> num;
sum = digit_sum(num);
if(sum > max){
max = sum;
res = num;
}
else if(sum == max){
if(num > res){
res = num;
}
}
}
cout << res;
return 0;
}
'๐ง ์ฝ๋ฉํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[์ธํ๋ฐ C++] 12. ์ซ์์ ์ด ๊ฐ์(large, ์ ํ์๊ฐ 1์ด) (0) | 2024.03.21 |
---|---|
[์ธํ๋ฐ C++] 11. ์ซ์์ ์ด ๊ฐ์(small) (0) | 2024.03.21 |
[์ธํ๋ฐ C++] 9. ๋ชจ๋์ ์ฝ์ (์ ํ์๊ฐ 1์ด) (0) | 2024.03.15 |
[์ธํ๋ฐ C++] 8. ์ฌ๋ฐ๋ฅธ ๊ดํธ (0) | 2024.03.15 |
[์ธํ๋ฐ C++] 7. ์์ด๋จ์ด ๋ณต๊ตฌ (0) | 2024.03.15 |