안녕하세요. 오늘은 초콜릿 중독을 주의할 거예요.
https://www.acmicpc.net/problem/31458
두가지 경우로 나눕시다.
1.맨 앞에 있는 !의 개수
2.(숫자)(뒤느낌표)가 의미하는 수
1번은 간단히 됩니다.
2는 생각보다 간단합니다. (숫자)가 0이고 (뒤느낌표)가 0개이면 0, 아니면 1입니다. 즉, s의 맨 마지막 문자가 0이면 0, 아니면 1입니다.
이 두개를 가지고 잘 하면 됩니다.
#include <iostream>
#include <string>
#define ll long long
using namespace std;
int main()
{
ios_base::sync_with_stdio(false); cin.tie(NULL);
ll N, i;
string s;
cin >> N;
while (N--)
{
cin >> s;
ll idx = 0;
for (i=0;;i++)
if (s[i] != '!')
{
idx = i;
break;
}
cout << !((idx % 2 == 0) == (s[s.length() - 1] == '0')) << "\n";
}
}
감사합니다.