<답안>
#include <iostream>
using namespace std;
int main()
{
int N,M,K;
int front[100] = {0};
int back[100] = {0};
int result[100];
int sum = 0;
cin>>N>>M;
for(int i=0; i<N; i++)
{
cin>>front[i]>>back[i];
result[i] = front[i];
}
while(M--)
{
cin>>K;
for(int i=0; i<N; i++)
{
//뒤집기
if(result[i] <= K)
{
if(result[i] == front[i])
result[i] = back[i];
else
result[i] = front[i];
}
}
}
for(int i=0; i<N; i++)
sum += result[i];
cout<<sum;
return 0;
}
<설명>
N번 반복하며 앞면 front[i]와 뒷면 back[i]를 입력받는다
그리고 현재 카드앞면을 저장할 result[i]를 front[i]로 설정해 놓는다
M번 반복하며 K를 입력받아 카드 인덱스 i=0 ~ N-1까지 확인하며
만약 result[i]값이 K보다 작거나 같은경우 result[i]값에 따라 뒤집는다
그렇게 최종적으로 남은 result[i] 값들을 다 더하여 출력한다
'백준 > Inha Algorithm Study Group' 카테고리의 다른 글
DAY5 고급 - 백준 19639번 (C++) (0) | 2020.09.07 |
---|---|
DAY5 중급 - 백준 1213번 (C++) (0) | 2020.09.07 |
DAY4 고급 - 백준 2505번 (C++) (0) | 2020.09.06 |
DAY4 중급 - 백준 10819번 (C++) (0) | 2020.09.05 |
DAY4 초급 - 백준 17262번 (C++) (0) | 2020.09.05 |