๐ ๋น ๋ฅธ ๋ฐ๋ก๊ฐ๊ธฐ
๐ ์ง๋ ๊ธ
์๋ ์ฝ๋๋ค์ ์ ๊นํ๋ธ์์๋ ํ์ธํ์ค ์ ์์ต๋๋ค. :-)
ํ์ฌ ์ฝ๋์ 100์ 1099๋ฒ๊น์ง ๋ชจ๋ ํผ ์ํ์์!
https://github.com/YejinHwang-D/Algorithm_CodeUp
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์ ๋ฐฐ์๋ฉด ๊ฑด๋๋๋๋ค.