2023.03.12
C++
https://www.acmicpc.net/problem/2577
๋ฌธ์
์ธ ๊ฐ์ ์์ฐ์ A, B, C๊ฐ ์ฃผ์ด์ง ๋ A × B × C๋ฅผ ๊ณ์ฐํ ๊ฒฐ๊ณผ์ 0๋ถํฐ 9๊น์ง ๊ฐ๊ฐ์ ์ซ์๊ฐ ๋ช ๋ฒ์ฉ ์ฐ์๋์ง๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์๋ฅผ ๋ค์ด A = 150, B = 266, C = 427 ์ด๋ผ๋ฉด A × B × C = 150 × 266 × 427 = 17037300 ์ด ๋๊ณ , ๊ณ์ฐํ ๊ฒฐ๊ณผ 17037300 ์๋ 0์ด 3๋ฒ, 1์ด 1๋ฒ, 3์ด 2๋ฒ, 7์ด 2๋ฒ ์ฐ์๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ A, ๋์งธ ์ค์ B, ์ ์งธ ์ค์ C๊ฐ ์ฃผ์ด์ง๋ค. A, B, C๋ ๋ชจ๋ 100๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 1,000๋ณด๋ค ์์ ์์ฐ์์ด๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์๋ A × B × C์ ๊ฒฐ๊ณผ์ 0 ์ด ๋ช ๋ฒ ์ฐ์๋์ง ์ถ๋ ฅํ๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ๋์งธ ์ค๋ถํฐ ์ด ๋ฒ์งธ ์ค๊น์ง A × B × C์ ๊ฒฐ๊ณผ์ 1๋ถํฐ 9๊น์ง์ ์ซ์๊ฐ ๊ฐ๊ฐ ๋ช ๋ฒ ์ฐ์๋์ง ์ฐจ๋ก๋ก ํ ์ค์ ํ๋์ฉ ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ 1
150
266
427
์์ ์ถ๋ ฅ 1
3
1
0
2
0
0
0
2
0
0
์ฝ๋
#include <iostream>
using namespace std;
int main() {
int A, B, C, r, result = 0;
int a[10] = { 0,0,0,0,0,0,0,0,0,0 };
cin >> A;
cin >> B;
cin >> C;
result = A * B * C;
while (result > 0) {
r = result % 10;
result = result / 10;
a[r]++;
}
for (int i = 0; i < 10; i++) {
cout << a[i] << endl;
}
return 0;
}
ํ์ด
์ ๋ ฅํ ์ธ ๊ฐ์ ์์ฐ์ A, B, C ๋ฅผ ๊ณฑํ ๋ณ์ result๋ฅผ 10์ผ๋ก ๋๋ ๋๋จธ์ง r์ result์ ์ซ์๋ฅผ ๋ํ๋ธ๋ค.
a[r]์ 0~9๊น์ง result์ ์ซ์๋ฅผ ๋ํ๋ธ๋ค.
result๋ฅผ 10์ผ๋ก ๋๋ ๋ชซ์ ๋ค์ result๋ก ๋ง๋ ๋ค.
result๋ฅผ 10์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ r์ด๊ณ , a์ r๋ฒ์งธ ๋ฐฐ์ด์ +1 ํด์ค๋ค.
์๋ฅผ ๋ค์ด 17์ 10์ผ๋ก ๋๋ ๋๋จธ์ง์ธ 7, a[7]์ +1 ํด์ค๋ค. ์ด๋ ๊ฒ ๋๋ฉด 7์ ํ๊ฐ๊ฐ ์๋ค๋ ๋ป์ด ๋๋ค.
17์ 10์ผ๋ก ๋๋ ๋ชซ์ 1์ด๊ณ 1์ 10์ผ๋ก ๋๋ ๋๋จธ์ง๋ 1์ด๋๋ค. a[1]์ +1 ํด์ฃผ๋ฉด 1์ ํ๊ฐ๊ฐ ์๋ค๋ ๋ป์ด ๋๋ค.
์ฆ, 1๊ณผ 7์ด ํ๊ฐ์ฉ ์๊ฒ ๋๋ค.
'Study > ์ฝํ ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค ๋ธ๋ก ์ฆ2 3052๋ฒ: ๋๋จธ์ง (0) | 2023.03.28 |
---|---|
๋ฐฑ์ค ๋ธ๋ก ์ฆ2 8958๋ฒ: OXํด์ฆ (0) | 2023.03.20 |
๋ฐฑ์ค ๋ธ๋ก ์ฆ3 2445๋ฒ: ๋ณ ์ฐ๊ธฐ - 8 (0) | 2023.02.25 |
๋ฐฑ์ค ๋ธ๋ก ์ฆ3 2444๋ฒ: ๋ณ ์ฐ๊ธฐ - 7 (0) | 2023.02.25 |
๋ฐฑ์ค ๋ธ๋ก ์ฆ3 3053๋ฒ: ํ์ ๊ธฐํํ (0) | 2023.02.25 |