c++ 언어로 백준 문제 푸는 중!
[본인 제출 코드(정답)]
#include<iostream>
using namespace std;
int main(void)
{
int num1, num2, num3, money;
cin>>num1>>num2>>num3;
if(num1==num2 && num2==num3)
money=10000+num1*1000;
else if(num1==num2 || num2==num3 || num1==num3)
{
if(num1==num2 || num1==num3)
money=1000+num1*100;
else
money=1000+num2*100;
}
else
money=(num1>num2?(num1>num3?num1:num3):(num2>num3?num2:num3))*100;
cout<<money<<endl;
return 0;
}
배운 점 (1)!
if(num1==num2 && num2==num3 && num1==num3)
처음에 세 수의 동일함을 비교할 때 코드를
if(num1==num2 && num2==num3)
어차피 num2==num3 만 비교하면 자연스레 num1==num3도 같을테니 두 번만 비교해주면 됨
배운 점 (2)!
if(num1==num2)
money=1000+num1*100;
else if(num2==num3)
money=1000+num2*100;
else
money=1000+num3*100;
처음에는 세 경우의 수 다 조건에 넣었으나,
if(num1==num2 || num1==num3)
money=1000+num1*100;
else
money=1000+num2*100;
num1==num2 || num1==num3 두 경우 money 값 계산이 같으므로 "||"을 사용해 한 줄로 합쳐주었다!