비트마스킹으로 아래 문제를 푸는데
https://www.acmicpc.net/problem/11723
간단하잖아?
대충 아래와 같이 코딩해서 제출했는데 78% 에서 자꾸 틀리는거야
using namespace std;
int main() {
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int n, s, a;
string cmd;
cin >> n;
while (n--) {
cmd.clear();
cin >> cmd;
if (cmd == "add") {
cin >> a;
s |= (1 << a);
} else if (cmd == "remove") {
cin >> a;
...
이렇게 저렇게 해보다가, int s 만 전역변수로 빼니까 정답 떴어.
이유를 모르겠네? 무슨 차이인거야?
s 초기화 함?
안했어. 전역변수일 때랑 지역변수일 때랑 초기화 여부에 따른 차이가 있어?
지역일땐 쓰레기값이 들가잇음 잉잉 - dc App
아 너 말 듣고 초기화해서 제출하니까 정답 뜨네;
전역에 선언하면 자동으로 s의 값이 0이 됨
고마워 어휴 한시간 넘게 하다가 하다가 띄어쓰기까지 고쳐보고 있었네;