๐ฉ๐ป๐ญ ์๋ ํ์ธ์~! ๊ณง๋ฐ๋ก ๋จ๊ณ [์กฐ๊ฑด๋ฌธ] ๋ฆฌ๋ทฐ๋ฅผ ๋ค๊ณ ์์ต๋๋ค ใ ใ
๋ฐ๋ก ๋ฆฌ๋ทฐ ์์ํด๋ณด๋๋ก ํ ๊ฒ์~!
2884 ์๋์๊ณ
์ด ๋ฌธ์ ์์ ์ฒดํฌํด์ผ ํ ์ํฉ์ ํฌ๊ฒ ์๋์ ๊ฐ์ด ๋ถ๋ฅํ ์ ์๋ค๊ณ ํ๋จํ๋ค.
<ํน์ case>
1. ์ ๋ ฅ๋๋ ์๊ฐ์ด 0์ 45๋ถ ์ด์ ์ธ ๊ฒฝ์ฐ (m<45) -> ๊ฐ์ฅ ํน์ ์ผ์ด์ค
2. ์ ๋ ฅ๋๋ ์๊ฐ์ด n์ 45๋ถ ์ด์ ์ธ ๊ฒฝ์ฐ (n>0, m<45)
3. ์ ๋ ฅ๋๋ ์๊ฐ์ด n์ 44๋ถ ์ดํ์ธ ๊ฒฝ์ฐ (n>0, m>=45) -> ๊ฐ์ฅ ๋ฌด๋ํ ์ผ์ด์ค
์์ ๊ฐ์ด ๋ถ๋ฅํ ํน์ case๋ฅผ if๋ฌธ์ ์กฐ๊ฑด์ผ๋ก ์ค์ ํ์ฌ ์ฝ๋๋ฅผ ์์ฑํ๋ค.
#include <stdio.h>
int main() {
int h, m;
scanf("%d %d", &h, &m);
if ((h >= 0) && (m >= 45)) {
m = m - 45;
}
else if ((h > 0) && (m < 45)) {
h = h - 1;
m = 60-(45 - m);
}
else if ((h == 0) && (m < 45)) {
h = 23;
m = 60 - (45 - m);
}
printf("%d %d", h, m);
return 0;
}
์ถ๋ ฅ์ ๊ณตํต์ฌํญ์ด๋ if-else ๋ฌธ์ ์ข ๋ฃํ ํ ์คํํ ์ ์๋๋ก ์ค๊ณํ๋ค.
2525 ์ค๋ธ ์๊ณ
๊ทธ๋ฆฌ๊ณ ์ ์ด ๋ฌธ์ ๊ฐ ์กฐ๊ธ ์ด๋ ต๊ฒ ๋๊ปด์ก๋ค ใ ใ ใ ใ
๋ถ๋ช ์์ ํ์ด ๋ณธ 2884 ๋ฌธ์ ์ ๊ต์ฅํ ์ ์ฌํ๋ค๊ณ ์๊ฐ์ ๋ค์์ง๋ง ํต๊ณผํ๊ธฐ(๋ง์์ต๋๋ค!!)๊ฐ ์๊ฐ์ธ๋ก ์ด๋ ต๋๋ผ๊ณ ๐ฅฒ
// ์ต์ข
์์ฑํ ์ฝ๋
#include <stdio.h>
int main() {
int h, m, time;
scanf("%d %d", &h, &m);
scanf("%d", &time);
h = h + (time/60);
m = m + (time%60);
h = h + m / 60;
m = m % 60;
if (h >= 24) {
h = h - 24;
}
printf("%d %d", h, m);
์ด ์ฝ๋๋ฅผ ์์ฑํ๋ฉด์ ๋๋ ๊ฒ์ if ๋ฌธ์ ๋๊ธฐ ์ , ๋ณ์์ ๋ํ ์กฐ๊ฑด์ ์ต์ํํ ์ ์๋ ๋งํผ ์ ๋ฆฌ(?)ํ๋ ๊ฒ๋ ๋ฐฉ๋ฒ์ด๋ค!
๋ผ๋ ๊ฒ์ด์๋ค. ์์ ์์ฑํ ์ฝ๋ ๊ฐ์ ๊ฒฝ์ฐ์๋ ์ด์ ์ ํผ ๋ฌธ์ ๋ณด๋ค๋ ๋ ๋ค์ํ ์กฐ๊ฑด์ด ๋์ฌ ์ ์๊ธฐ ๋๋ฌธ์
(1. ์ ๋ ฅ๋ฐ์ ์๊ฐ์ผ๋ก๋ถํฐ ์ผ๋ง๋ฅผ ๋ํ ๊ฒ์ธ์ง๋ฅผ ์ ๋ ฅ๋ฐ์์ผํ๊ณ
2, ๊ทธ ์๊ฐ์ ๋ฒ์๊ฐ 0~10000 ์ฌ์ด์ด๋ค)
ํนํ ๋ณ์๋ฅผ ๋ถ๋ฅํ ์ ์๋ ์กฐ๊ฑด์ ์ต์ํํ๊ธฐ ์ํ ์์ ์ด ์ค์ํ๋ค๊ณ ๋๊ปด์ก๋ค.
๊ทธ๋์ ์ฒซ๋ฒ์งธ ์์ ์ ์ ๋ ฅ๋ฐ์ ์๊ฐ(time)์ 60(๋ถ)์ผ๋ก ๋๋ ๋ชซ์ ์ฃผ์ด์ง h(์)์ ๋ํ๊ณ , 60์ผ๋ก ๋๋ ํ ๋๋จธ์ง๋ฅผ ์ฃผ์ด์ง m(๋ถ)์ ๋ํ๋ ์์ ์ ๊ฑฐ์ณค๋ค. ๊ทธ ์ดํ์ ๋๋ฒ์งธ ์์ ์์๋ ๊ด๋ฒ์ํ time์ ๋ฒ์๋ก ์ธํด ์ฒซ๋ฒ์งธ ์์ ์์ 60๋ถ ์ด์์ ๊ฐ์ ๊ฐ์ง๊ณ ์์์๋ ์๋ m์ ์ํด m์ 60์ผ๋ก ๋๋ ๋ชซ์ ์ฒซ๋ฒ์งธ ์์ ์ h์ ๋ํ๊ณ m์ 60์ผ๋ก ๋๋ ํ ๋๋จธ์ง๋ฅผ ์ต์ข m์ผ๋ก ํ ๋นํ๋ค.
์ฒซ๋ฒ์งธ ์์ ํ๋ ๊ฒ์ ์ค์ค๋ก๋ ์๊ฐํด๋ผ ์ ์์๋๋ฐ, ๋๋ฒ์งธ ์์ ์ ์๊ฐํ์ง ๋ชปํ๊ณ , ๋์ if-else ๋ฌธ์์ ์กฐ๊ฑด์ ๊ฑฐ๋ญ ์ค์ ํ์ฌ ์์ธ์ฒ๋ฆฌ๋ฅผ ํ๋ ค๊ณ ๋ง ํ๋๋ ์ฝ๋๋ ํ์์ด์์ผ๋ก ๊ธธ์ด์ง๊ณ ๋ณต์กํด์ง๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๋ค. ์ดํ ์ง๋ฌธ ๊ฒ์ํ๊ณผ ๊ตฌ๊ธ๋ง์ ํ์ฉํด ๋๋ฒ์งธ ์์ ๊ณผ ๊ฐ์ ์ฒ๋ฆฌ๋ฅผ if๋ฌธ ์ ์ ํ ์ ์๋ค๋ ๊ฒ์ ์๊ฒ ๋์ด ๋๋ฒ์งธ ์์ ์ ๊ตฌํํ ์ ์์๋ค. ์์ํ์ง๋ง, ๋ฐฑ์ค์ ์ง๋ฌธ ๊ฒ์ํ์ ์ ๋ง ์ค์ค๋ก๊ฐ ์ผ๋ง๋ ์ ํ์ฉํ๋์ ๋ฐ๋ผ ์ ์ฉํ๊ฒ ์ ์ฌ์ฉํ ์ ์๋ค๊ณ ์๊ฐํ๋ค! ์ค์ค๋ก ์ถฉ๋ถํ ๊ณ ๋ฏผ ํ์ ์ง๋ฌธ๊ฒ์ํ์์ ์ป๋ ํด๋ต์ ์ ๋ง ์ ๋ฐํ๊ณ ์น์ ํ๊ฒ ๋ค๊ฐ์จ๋ค.๐๋๋ถ์ m์ด 60 ์ด์์ผ ๊ฒฝ์ฐ๋ฅผ ๋ฐฐ์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ดํ ์์ฑํ๋ if๋ฌธ์์๋ h๊ฐ 23(h>=24)์ ๋์ด๊ฐ๋ ํน์ case ํ๋์ ๋ํด์๋ง ์ฒ๋ฆฌํ๋ฉด ๋ฏธ์ ์ฑ๊ณต~!
2480 ์ฃผ์ฌ์ ์ธ๊ฐ
์ด๋ฒ ๋จ๊ณ์ ๋ง์ง๋ง ๋ฌธ์ ์ธ 2480 ์ฃผ์ฌ์ ์ธ๊ฐ!
3๊ฐ์ ์ฃผ์ฌ์๋ฅผ ๊ตด๋ ค(ํํต์ด ์๊ฐ๋ใ .ใ ) ์ธ๊ฐ์ง ๊ฒฝ์ฐ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋ ์๊ธ์ ์ถ๋ ฅํ๋ ๋ฌธ์ ์๋ค.
#include <stdio.h>
#define max(x,y) (x)>(y) ? (x):(y) //x,y ์ค ํฐ ๊ฐ ๋ฐํ
int main() {
int num1, num2, num3;
int maxNum = 0;
int price = 0;
scanf("%d %d %d", &num1, &num2, &num3);
if ((num1 == num2) && (num2 == num3)) {
// ๊ฐ์ ๋์ด 3๊ฐ๊ฐ ๋์ค๋ ๊ฒฝ์ฐ
price = 10000 + (num1 * 1000);
}
else if (num1 == num2) {
// ๊ฐ์ ๋์ด 2๊ฐ๋ง ๋์ค๋ ๊ฒฝ์ฐ
price = 1000 + (num1 * 100);
}
else if (num2 == num3) {
// ๊ฐ์ ๋์ด 2๊ฐ๋ง ๋์ค๋ ๊ฒฝ์ฐ
price = 1000 + (num2 * 100);
}
else if (num1 == num3) {
// ๊ฐ์ ๋์ด 2๊ฐ๋ง ๋์ค๋ ๊ฒฝ์ฐ
price = 1000 + (num3 * 100);
}
else if ((num1 != num2) && (num2 != num3) && (num1 != num3)) {
// ๋ชจ๋ ๋ค๋ฅธ ๋์ด ๋์ค๋ ๊ฒฝ์ฐ
maxNum = max(max(num1, num2), num3);
price = maxNum * 100;
}
printf("%d", price);
return 0;
}
์์ ์กฐ๊ฑด๋ฌธ ๋ฌธ์ ๋ค์ ํ๋ฉด์ ๋๋ ๊ฒ์, if๋ฌธ์ ๋ค๋ฃจ๋ ๋ฌธ์ ์์ ์ผ์ด์ค ๋ถ๋ฅ๊ฐ ๊ต์ฅํ ์ค์ํ๋ค๋ ๊ฒ์ด๋ค. ์ผ์ด์ค ๋ถ๋ฅ๋ง ์ํด๋ ๋ฐ์ ์ฑ๊ณต์ด๋ค!! ๋ผ๊ณ ๋๊ผ๋ฌ๊น ใ ใ ๋ฌดํผ ๋ฌธ์ ์์ ์ฃผ์ด์ง ์ผ์ด์ค์ ๋ฐ๋ผ if-else ๋ฌธ์ ์ฌ์ฉํ์ฌ ์ฝ๋๋ฅผ ๊ตฌํํ๋ค.
์กฐ๊ธ ์ ๋จน์๋ ๋ถ๋ถ์ ์๋ฌด๋๋ ์ฃผ์ฌ์ 2๊ฐ๋ง ๊ฐ์ ๋์ด ๋์ค๋ ๊ฒฝ์ฐ์๋ค! ๊ทธ๋ฐ๋ฐ if-else ๋ฌธ์ ํน์ฑ์ ์ ์ดํดํ๊ณ ๋ ์ฌ๋ฆฌ๋ฉด ์ถฉ๋ถํ ๋น ๋ฅด๊ฒ ํ ์ ์๋ ๋ฌธ์ ์๋ค. ๊ฒฐ๊ตญ์ ์์ if๋ฌธ์ ํต๊ณผํ์ง ๋ชปํ ์์ด๋ค์ด ์ดํ์ ์ค๋ else if๋ฌธ์ผ๋ก ์จ๋ค๋ ์ฑ์ง์ ์ด์ฉํ๋ค๋ฉด ์กฐ๊ฑด์ ์ง๋ ๊ฒ์ด ํจ์ฌ ์์ํด์ง๋ ๋ฌธ์ ! ์ด๊ฑธ ๊ฐ๊ณผํ๋๋ ์ด๋ฐ์ ์กฐ๊ฑด ์งค ๋ ๋งํ์ด ๋๊ปด์ก๋ ๊ฒ ๊ฐ๋ค. ๋ค์์ ์ด๊ฑธ ๊ธฐ์ตํ๊ณ ์ด๋ฐ์ ์กฐ๊ฑด์ ์ ์ง์!!
์, ๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ์ต์ํด์ ธ์ผ ํ ๊ฒ์! max, min ํจ์ ์ฌ์ฉํ๊ธฐ!!
#define max(x,y) (x)>(y) ? (x):(y) //x,y ์ค ํฐ ๊ฐ ๋ฐํ
#define min(x,y) (x)<(y) ? (x):(y) //x,y ์ค ์์ ๊ฐ ๋ฐํ
max(x,y) ํน์ min(x,y)๋ฅผ ์ ์ฒ๋ฆฌ ์ ์ธํ๋ฉด ์ถํ์ max ๊ฐ์ด๋ min ๊ฐ์ ์ฐพ์ ๋ ํจ์๋ง ๋ถ๋ฌ์์ ๋ฐ๋ก ์ฌ์ฉ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์ ์์๋๋ ๊ฒ์ด ์ข๋ค.
์ด๋ก์จ ๋ฐฑ์ค ๋จ๊ณ๋ณ ๋ฌธ์ - [์กฐ๊ฑด๋ฌธ]๋ ๋ง๋ฌด๋ฆฌ ์ง์ ์ ์๊ฒ ๋ค~!
๋ค์ ๊ธ์ ์ดํ ๋จ๊ณ์ธ [๋ฐ๋ณต๋ฌธ]์ review ํฌ์คํ ์ผ๋ก ๊ฐ์ ธ์ค๊ฒ ์ต๋๋น ๐