이 문제는 풀때 딱히 어려운 개념은 없었다.
한가지 헷갈렸던 점은
C++은 수학이랑 다르단 점
(A/B)*B = A 가 아니란 점만 알고 넘어가자
#include<iostream>
#include<algorithm>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(NULL);
int arr[14];
int cash;
cin >> cash;
int JH = cash;//준현이가 가지고 있는 현금
int JHnum=0;//준현이가 가지고 있는 주 개수
int SM = cash;//성민이가 가지고 있는 현금
int SMnum = 0;//성민이가 가지고 있는 주 개수
for (int i = 0; i < 14; i++) {
int num;
cin >> num;
arr[i] = num;
//준현이가 주식을 사는 경우
if (JH / num > 0)
{
JHnum=JHnum+JH/num;
JH = JH - (JH / num)*num;
}
}
//성민이가 주식을 사는 경우
for (int i = 2; i < 14; i++) {
if (arr[i - 3] > arr[i - 2] &&arr[i-2]> arr[i-1]) {//&& 를 연속으로 두번 쓰는것 x
if (SM / arr[i] > 0) {
SMnum = SMnum + SM / arr[i];
SM = SM - (SM /arr[i])*arr[i];
}
}
else if (arr[i - 3] < arr[i - 2]&&arr[i-2] < arr[i-1]) {
if (SMnum > 0) {
SM = SM + SMnum*arr[i];
SMnum = 0;
}
}
}
//누가 더 많이 들고 있나 check
if (arr[13] * JHnum + JH > arr[13] * SMnum + SM)cout << "BNP" << endl;
else if (arr[13] * JHnum + JH == arr[13] * SMnum + SM)cout << "SAMESAME" << endl;
else cout << "TIMING" << endl;
}
'문제풀이 > 백준' 카테고리의 다른 글
[C++] 백준 9095번 문제풀이 (0) | 2021.02.22 |
---|---|
[C++] 백준 7662번 문제풀이 (0) | 2021.02.22 |
[C++] 백준 20544 문제풀이 (0) | 2021.02.21 |
[C++] 백준 7576번 문제풀이 (0) | 2021.02.19 |
[C++] 백준 2630 문제풀이 (0) | 2021.02.16 |