๐Ÿ–ค Algorithm/CodeUp : C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ

[์ฝ”๋“œ์—… CodeUp] C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ 1084๋ฒˆ ~ 1088๋ฒˆ ํ’€์ด

์˜ˆ์ง„-D 2021. 9. 5. 22:46

๐Ÿ“Œ ๋น ๋ฅธ ๋ฐ”๋กœ๊ฐ€๊ธฐ 

 

 

 

๐Ÿ“ ์ง€๋‚œ ๊ธ€

2021.09.03 - [๐Ÿ–ค ์ฝ”๋“œ์—… CodeUp/C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ] - [์ฝ”๋“œ์—… CodeUp] C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ 1078๋ฒˆ ~ 1083๋ฒˆ ํ’€์ด

 

[์ฝ”๋“œ์—… CodeUp] C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ 1078๋ฒˆ ~ 1083๋ฒˆ ํ’€์ด

๐Ÿ“Œ ๋น ๋ฅธ ๋ฐ”๋กœ๊ฐ€๊ธฐ 1078๋ฒˆ 1079๋ฒˆ 1080๋ฒˆ 1081๋ฒˆ 1082๋ฒˆ 1083๋ฒˆ ๐Ÿ“ ์ง€๋‚œ ๊ธ€ 2021.08.14 - [๐Ÿ–ค ์ฝ”๋“œ์—… CodeUp/C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ] - [์ฝ”๋“œ์—… CodeUp] C์–ธ์–ด ๊ธฐ์ดˆ 100์ œ 1071๋ฒˆ ~ 1077๋ฒˆ ํ’€์ด [์ฝ”๋“œ์—… CodeUp] C์–ธ์–ด..

hyj3463.tistory.com

 

 

 

์•„๋ž˜ ์ฝ”๋“œ๋“ค์€ ์ œ ๊นƒํ—ˆ๋ธŒ์—์„œ๋„ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :-)

ํ˜„์žฌ ์ฝ”๋“œ์—… 100์ œ 1099๋ฒˆ๊นŒ์ง€ ๋ชจ๋‘ ํ‘ผ ์ƒํƒœ์˜ˆ์š”!

https://github.com/YejinHwang-D/Algorithm_CodeUp 

 

GitHub - YejinHwang-D/Algorithm_CodeUp: Code-up basic 100 answer using C

Code-up basic 100 answer using C. Contribute to YejinHwang-D/Algorithm_CodeUp development by creating an account on GitHub.

github.com

 

 


 

codeup.kr/problemsetsol.php

 

๋ฌธ์ œ์ง‘

 

codeup.kr

1084๋ฒˆ๋ถ€ํ„ฐ 1088๋ฒˆ๊นŒ์ง€๋Š” ์ข…ํ•ฉ ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค. ์•ž์—์„œ ๋ดค๋˜ ๋‚ด์šฉ๋“ค์ด ๋˜ ๋‚˜์˜ต๋‹ˆ๋‹ค.

 

 

๐Ÿ’ก ์•„์ฃผ ์†Œ์†Œํ•œ Tip

๋ฐ˜๋ณต๋˜๋Š” ์ฝ”๋“œ ํ‘œํ˜„์€ ์ฝ”๋”ฉ ์Šคํƒ€์ผ ์„ค์ •์„ ์ด์šฉํ•˜๋ฉด ์ž๋™์œผ๋กœ ์ž…๋ ฅํ•ด์ค๋‹ˆ๋‹ค. 

 

 


 

 

1084๋ฒˆ

์ถœ๋ ฅ ์„ค๋ช…: R, G, B ๊ฐ’ ์„ž์–ด ์ƒ‰ ๊ฐ€์ง“์ˆ˜ ์ถœ๋ ฅ

#include <stdio.h>

int main() {
	int r, g, b, sum=0;
	int i, j, k;
	scanf("%d %d %d", &r, &g, &b);
	
	for (i=0; i<r; i++) {
	    for (j=0; j<g; j++) {
	        for (k=0; k<b; k++) {
	            printf("%d %d %d\n", i, j, k);
	            sum++;
	        }
	    }
	}
	printf("%d", sum);
	return 0;
}

R, G, B์˜ ๋น› ๊ฐ€์ง“์ˆ˜๋ฅผ ์•Œ์•„์•ผ ํ•˜๋ฏ€๋กœ ๋ณ€์ˆ˜ 3๊ฐœ, ๊ทธ๋ฆฌ๊ณ  ์ด๊ฐ€์ง“์ˆ˜๋ฅผ ์ €์žฅํ•  ๋ณ€์ˆ˜ ํ•œ ๊ฐœ๋ฅผ ์„ ์–ธํ•œ ๋’ค 0์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•ด์ค๋‹ˆ๋‹ค. ๋‹คํ–‰ํžˆ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ถœ๋ ฅํ•˜๋Š” ๊ฒƒ์ด๋‹ˆ ์‚ผ์ค‘ for๋ฌธ์„ ์‚ฌ์šฉํ•ด ์ถœ๋ ฅํ•ด์ฃผ์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค! ์ด๋•Œ ์ถœ๋ ฅ๊ณผ ๊ฐ€์ง“์ˆ˜ ๋”ํ•˜๊ธฐ๋Š” for๋ฌธ์˜ ๊ฐ€์žฅ ์•ˆ์ชฝ์—์„œ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฐ€์ง“์ˆ˜๋Š” for๋ฌธ์„ ์™„์ „ํžˆ ๋ฒ—์–ด๋‚œ ํ›„ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

 

 

 

1085๋ฒˆ

์ถœ๋ ฅ ์„ค๋ช…: ์†Œ๋ฆฌ ํŒŒ์ผ ์ €์žฅ์šฉ๋Ÿ‰ ๊ณ„์‚ฐ ๋ฐ ์ถœ๋ ฅ

#include <stdio.h>

int main() {
    int h, b, c, s;
    double mb;
    scanf("%d %d %d %d", &h, &b, &c, &s);
    mb = (float)h*b*c*s/8/1024/1024;
    printf("%.1lf MB", mb);
	
	return 0;
}

๊ณ„์‚ฐํ•˜๋Š” ์‹์€ ๋‹คํ–‰ํžˆ๋„ ๋ฌธ์ œ ์„ค๋ช…์— ๋‚˜์™€์žˆ์Šต๋‹ˆ๋‹ค! ๊ฒฐ๊ตญ h * b * c * s ๊ฐ€ ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” PCM ๋ฐฉ์‹์˜ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค. ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ๊ฐ•์˜ ๋•Œ ๋ฐฐ์šด ๋‚ด์šฉ์ด๋ผ ํฅ๋ฏธ๋กœ์› ๋„ค์š”. ๊”ทฬ‘โ—ก๊”ทฬ‘

๊ทธ๋ฆฌ๊ณ  ๋‹จ์œ„ ๋ณ€ํ™˜์„ ํ•ด์ค˜์•ผ ํ•˜๋Š”๋ฐ, ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋Š” bit ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. 8bit = 1Byte, 1024Byte = 1KB, 1024KB = 1MB์ด๋ฏ€๋กœ bit๋ฅผ 1MB๋กœ ๋ฐ”๊พธ๋ ค๋ฉด  (8 * 1024 * 1024)๋ฅผ ๋‚˜๋ˆ ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋ˆ„๋‹ค๋ณด๋ฉด ์‹ค์ˆ˜๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ทธ๋Ÿด ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•ด MB๋ฅผ ์ €์žฅํ•  ๋ณ€์ˆ˜(mb)๋ฅผ doubleํ˜•์œผ๋กœ ์„ ์–ธํ•ด์ฃผ๊ณ  ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ํ˜• ๋ณ€ํ™˜ํ•ด์ฃผ์„ธ์š”. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ๋Š” ์ง์ ‘ ํ˜• ๋ณ€ํ™˜์„ ํ•ด์ฃผ๋Š” '๋ช…์‹œ์  ํ˜• ๋ณ€ํ™˜'์ž…๋‹ˆ๋‹ค.

 

 

 

1086๋ฒˆ

์ถœ๋ ฅ ์„ค๋ช…: ๊ทธ๋ฆผ ํŒŒ์ผ ์ €์žฅ ์šฉ๋Ÿ‰ ๊ณ„์‚ฐ ๋ฐ ์ถœ๋ ฅ

#include <stdio.h>

int main() {
	int w, h, b;
	double mb;
	scanf("%d %d %d", &w, &h, &b);
	mb = (float)w*h*b/8/1024/1024;
	printf("%.2lf MB", mb);
	return 0;
}

๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด w * h๋กœ ๋ฐ”๋€Œ์—ˆ์„ ๋ฟ, ๋ฐฉ์‹์€ 1085๋ฒˆ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค! ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ช…์‹œ์  ํ˜• ๋ณ€ํ™˜์— ์ฃผ์˜ํ•ด์ฃผ์„ธ์š”.

 

 

1087๋ฒˆ

์ถœ๋ ฅ ์„ค๋ช…: ์ž…๋ ฅํ•œ ์ˆ˜๋ณด๋‹ค ์ž‘์„ ๋•Œ๊นŒ์ง€ 1๋ถ€ํ„ฐ ๋”ํ•˜๊ธฐ

#include <stdio.h>

int main() {
	int num, sum=0, i=0;
	scanf("%d", &num);
	
	while (1) {
	    sum += ++i;
	    
	    if (sum >= num) {
	        printf("%d", sum);
	        break;
	    }
	}
	return 0;
}

1๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ๋”ํ•ด๋‚˜๊ฐˆ ๋•Œ, ๊ทธ ํ•ฉ์ด ์ž…๋ ฅ๋œ ์ •์ˆ˜๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ์ปค์ง€๋ฉด ์ข…๋ฃŒํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์–ธ์ œ ๋๋‚ ์ง€ ๋ชจ๋ฅด๋ฏ€๋กœ while ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ฌดํ•œ๋ฃจํ”„๋ฅผ ์‚ฌ์šฉํ•  ๋• ๋ฐ˜๋“œ์‹œ break ์กฐ๊ฑด์„ ๊ฑธ์–ด์•ผ ๋ฉ๋‹ˆ๋‹ค.

์ €๋Š” i๋ฅผ 0์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ์ „์œ„ ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•ด while๋ฌธ ๋‚ด๋ถ€ ์ฒซ ์ค„์— ์ผ๋Š”๋ฐ, ํ›„์œ„ ์—ฐ์‚ฐ์ž(i++)๋ฅผ ์‚ฌ์šฉํ•  ๋• i๋ฅผ 1๋กœ ํ•˜์‹œ๊ณ  ํ•ฉ๊ณ„์— ๋”ํ•˜๋Š” ๋ถ€๋ถ„์„ while๋ฌธ ๋‚ด๋ถ€ ๋์ž๋ฝ์— ์จ์ฃผ์‹œ๊ฑฐ๋‚˜ for๋ฌธ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋  ๊ฒƒ ๊ฐ™๋„ค์š”.

 

 

 

1088๋ฒˆ

์ถœ๋ ฅ ์„ค๋ช…: ์ž…๋ ฅํ•œ ์ •์ˆ˜๊นŒ์ง€ 3์˜ ๋ฐฐ์ˆ˜๋Š” ๋นผ๊ณ  ์ถœ๋ ฅ

#include <stdio.h>

int main() {
	int num;
	scanf("%d", &num);
	for (int i=1; i<=num; i++) {
	    if (i%3 != 0) 
	        printf("%d ", i);
	}
	return 0;
}

3์˜ ๋ฐฐ์ˆ˜๋Š” 3์œผ๋กœ ๋‚˜๋ˆด์„ ๋•Œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ธ ์ˆ˜์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1๋ถ€ํ„ฐ ์ž…๋ ฅํ•œ ์ˆ˜๊นŒ์ง€ ๋ฐ˜๋ณตํ•˜๋Š” for๋ฌธ ๋‚ด๋ถ€์— ์กฐ๊ฑด์„ ๊ฑธ์–ด i๊ฐ€ 3์˜ ๋ฐฐ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ฉด ์ถœ๋ ฅ, 3์˜ ๋ฐฐ์ˆ˜๋ฉด ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค.