SWLUG/๋ฐฑ์ค€ BEAKJOON

[C] ๋ฐฑ์ค€ BAEKJOON 2577๋ฒˆ: ์ˆซ์ž์˜ ๊ฐœ์ˆ˜

waterproof 2023. 10. 6. 01:19

https://www.acmicpc.net/problem/2577

 

2577๋ฒˆ: ์ˆซ์ž์˜ ๊ฐœ์ˆ˜

์ฒซ์งธ ์ค„์— A, ๋‘˜์งธ ์ค„์— B, ์…‹์งธ ์ค„์— C๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. A, B, C๋Š” ๋ชจ๋‘ 100๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜์ด๋‹ค.

www.acmicpc.net

 


[1] ๋ฌธ์ œ

 

 

๋ฌธ์ œ

์„ธ ๊ฐœ์˜ ์ž์—ฐ์ˆ˜ 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

 

 

 

 


[2] ์ •๋‹ต ๋ฐ ํ•ด์„

 

 

# ์ •๋‹ต ์ฝ”๋“œ

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>

int main(void) {

	int A, B, C;

	scanf("%d", &A);
	scanf("%d", &B);
	scanf("%d", &C);

	int result = A * B * C;

	int a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0;

	int k = result;

	while (k > 0) {
		if (k % 10 == 0) a++;
		else if (k % 10 == 1) b++;
		else if (k % 10 == 2) c++;
		else if (k % 10 == 3) d++;
		else if (k % 10 == 4) e++;
		else if (k % 10 == 5) f++;
		else if (k % 10 == 6) g++;
		else if (k % 10 == 7) h++;
		else if (k % 10 == 8) i++;
		else j++;
		k /= 10;
	}

	printf("%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n%d\n", a, b, c, d ,e ,f ,g ,h ,i, j); 

	return 0;
}

 

 

 

 

# ํ•ด์„

๋‹ค๋ฅธ ๋ถ€๋ถ„์€ ์ดํ•ดํ•˜๊ธฐ ์–ด๋ ต์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ด์„œ

while ๊ตฌ๋ฌธ ์•ˆ์˜ ์ฝ”๋“œ๋ฅผ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.

 

 

while {...} ๋ถ€๋ถ„์€ ์ฃผ์–ด์ง„ ๋ณ€์ˆ˜ k์—์„œ ๊ฐ ์ž๋ฆฟ์ˆ˜๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ์„ธ๋Š” ๊ณผ์ •์ด๋‹ค.


k๊ฐ€ 0๋ณด๋‹ค ํฐ ๋™์•ˆ์— ๋ฃจํ”„๊ฐ€ ์‹คํ–‰๋จ.
๋ฃจํ”„๋Š” ์•„์ง ๋‚จ์€ ์ž๋ฆฟ์ˆ˜๊ฐ€ ์žˆ๋Š” ๋™์•ˆ ๊ณ„์†ํ•ด์„œ ๋ฐ˜๋ณต.


k % 10์€ k๋ฅผ 10์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•จ.
์ด๋ ‡๊ฒŒ ํ•˜๋ฉด k์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ž๋ฆฟ์ˆ˜๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, k๊ฐ€ 123์ด๋ผ๋ฉด? k % 10์€ 3.


if-else ๊ตฌ๋ฌธ์„ ํ†ตํ•ด ํ˜„์žฌ ์ž๋ฆฟ์ˆ˜๊ฐ€ ์–ด๋–ค ์ˆซ์ž์ธ์ง€๋ฅผ ํ™•์ธํ•˜๊ณ , ํ•ด๋‹นํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ 1์”ฉ ์ฆ๊ฐ€์‹œํ‚ด.
์˜ˆ๋ฅผ ๋“ค์–ด, k % 10 == 1์€ ํ˜„์žฌ ์ž๋ฆฟ์ˆ˜๊ฐ€ 1์ธ ๊ฒฝ์šฐ๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ, ๊ทธ๋Ÿด ๊ฒฝ์šฐ ๋ณ€์ˆ˜ b๋ฅผ 1 ์ฆ๊ฐ€์‹œํ‚จ๋‹ค.


๋งˆ์ง€๋ง‰์œผ๋กœ k๋ฅผ 10์œผ๋กœ ๋‚˜๋ˆ ์„œ ๋‹ค์Œ ์ž๋ฆฟ์ˆ˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋„๋ก ์ค€๋น„ํ•œ๋‹ค.
์˜ˆ๋ฅผ ๋“ค์–ด, 123์—์„œ 12๊ฐ€ ๋˜์–ด ๋‹ค์Œ ๋ฃจํ”„์—์„œ๋Š” ๋‹ค์Œ ์ž๋ฆฟ์ˆ˜๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

์ด๋ ‡๊ฒŒ k์˜ ๊ฐ ์ž๋ฆฟ์ˆ˜๋ฅผ ํ•˜๋‚˜์”ฉ ํ™•์ธํ•˜๊ณ , ๊ฐ ์ˆซ์ž๊ฐ€ ๋ช‡ ๋ฒˆ ๋‚˜ํƒ€๋‚˜๋Š”์ง€๋ฅผ ์„ธ๋Š” ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.

 

 


[3] ๋Š๋‚€ ์ 

 

 

 

while {...} ์•ˆ์˜ ์ฝ”๋“œ๋ฅผ ๋– ์˜ฌ๋ฆฌ์ง€ ๋ชปํ•ด์„œ ๊ตฌ๊ธ€๋ง์„ ํ–ˆ๋‹ค.

 

์œ„์˜ ๋ฐฉ๋ฒ• ๋ง๊ณ  ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•œ ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

 

์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ: https://blog.naver.com/wpqlks7/222939658470