제출 #1219815

#제출 시각아이디문제언어결과실행 시간메모리
1219815Nika533Broken Device (JOI17_broken_device)C++20
100 / 100
31 ms1608 KiB
#pragma GCC diagnostic warning "-std=c++11"
#include <bits/stdc++.h>
#include "Annalib.h"
#define pb push_back
#define f first
#define s second
#define MOD 1000000007
#define flush fflush(stdout)
#define all(x) (x).begin(),(x).end()
#define allr(x) (x).rbegin(), (x).rend()
#define pii pair<int,int>
using namespace std;

void Anna( int N, long long X, int K, int P[]){
	map<int,int> mymap;
	for (int i=0; i<K; i++) mymap[P[i]]=1;
	vector<int> v;
	long long x=X;
	while (x) {
		v.pb(x%2); x/=2;
	}
	int sz=v.size(); 
	v.pb(0); v.pb(0);
	int ind=0;
	for (int i=0; i<N; i+=3) {
		if (ind>=sz || mymap[i]+mymap[i+1]+mymap[i+2]>1) {
			Set(i,0); Set(i+1,0); Set(i+2,0);
		}
		else {
			if (mymap[i]+mymap[i+1]+mymap[i+2]==0) {
				if (v[ind]==0 && v[ind+1]==0) {
					Set(i,0); Set(i+1,1); Set(i+2,0);
				}
				else if (v[ind]==0 && v[ind+1]==1) {
					Set(i,0); Set(i+1,1); Set(i+2,1);
				}
				else if (v[ind]==1 && v[ind+1]==0) {
					Set(i,1); Set(i+1,0); Set(i+2,1);
				}
				else if (v[ind]==1 && v[ind+1]==1) {
					Set(i,1); Set(i+1,1); Set(i+2,1);
				}
				ind+=2;
			}
			else {
				if (mymap[i]==1) {
					if (v[ind]==0) {
						if (v[ind+1]==0) {	
							Set(i,0); Set(i+1,1); Set(i+2,0);
						}
						else if (v[ind+1]==1) {	
							Set(i,0); Set(i+1,1); Set(i+2,1);
						}
						ind+=2;
					}
					else if (v[ind]==1) {
						Set(i,0); Set(i+1,0); Set(i+2,1);
						ind++;
					}
				}
				else if (mymap[i+1]==1) {
					if (v[ind]==0) {
						Set(i,1); Set(i+1,0); Set(i+2,0);
					}
					else if (v[ind]==1) {
						Set(i,0); Set(i+1,0); Set(i+2,1);
					}
					ind++;
				}
				else if (mymap[i+2]==1) {
					if (v[ind]==0) {
						Set(i,1); Set(i+1,0); Set(i+2,0);
					}
					else if (v[ind]==1) {
						Set(i,1); Set(i+1,1); Set(i+2,0);
					}
					ind++;
				}
			}
		}
	}
}
#pragma GCC diagnostic warning "-std=c++11"
#include <bits/stdc++.h>
#include "Brunolib.h"
#define pb push_back
#define f first
#define s second
#define MOD 1000000007
#define flush fflush(stdout)
#define all(x) (x).begin(),(x).end()
#define allr(x) (x).rbegin(), (x).rend()
#define pii pair<int,int>
using namespace std;

long long Bruno( int N, int A[] ){
	vector<int> v;
	for (int i=0; i<N; i+=3) {
		if (A[i]==0 && A[i+1]==0 && A[i+2]==0) {
			continue;
		}
		if (A[i]==0 && A[i+1]==0 && A[i+2]==1) {
			v.pb(1);
		}
		if (A[i]==1 && A[i+1]==0 && A[i+2]==0) {
			v.pb(0);
		}
		if (A[i]==1 && A[i+1]==1 && A[i+2]==0) {
			v.pb(1);
		}
		if (A[i]==0 && A[i+1]==1 && A[i+2]==0) {
			v.pb(0); v.pb(0);
		}
		if (A[i]==0 && A[i+1]==1 && A[i+2]==1) {
			v.pb(0); v.pb(1);
		}
		if (A[i]==1 && A[i+1]==0 && A[i+2]==1) {
			v.pb(1); v.pb(0);
		}
		if (A[i]==1 && A[i+1]==1 && A[i+2]==1) {
			v.pb(1); v.pb(1); 
		}
	}
	int sz=v.size();
	long long x=0;
	for (int i=sz-1; i>=0; i--) {
		x*=2; x+=v[i];
	}
	return x;
}

컴파일 시 표준 에러 (stderr) 메시지

# 1번째 컴파일 단계

Anna.cpp:1:32: warning: '-std=c++11' is not an option that controls warnings [-Wpragmas]
    1 | #pragma GCC diagnostic warning "-std=c++11"
      |                                ^~~~~~~~~~~~

# 2번째 컴파일 단계

Bruno.cpp:1:32: warning: '-std=c++11' is not an option that controls warnings [-Wpragmas]
    1 | #pragma GCC diagnostic warning "-std=c++11"
      |                                ^~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...