제출 #1224488

#제출 시각아이디문제언어결과실행 시간메모리
1224488asli_bgLight Bulbs (EGOI24_lightbulbs)C++20
22 / 100
76 ms472 KiB
#include <bits/stdc++.h> using namespace std; #define fi first #define se second #define pb push_back #define sp <<' '<< #define FOR(i,a) for(int i=0;i<(a);i++) #define FORE(i,a,b) for(int i=(a);i<(b);i++) #define cont(x) for(auto el:x) cout<<el<<endl; #define contp(x) for(auto el:x) cout<<el.fi<<'-'<<el.se<<' ';cout<<endl; #define DEBUG(x) cout<<#x sp x<<endl; typedef vector<int> vi; typedef pair<int,int> pii; typedef vector<pii> vii; int main(){ //ios_base::sync_with_stdio(false); //cin.tie(0);cout.tie(0); int n; cin>>n; vector<string> grid(n); vector<string> res(n); vector<string> cev(n); FOR(i,n){ FOR(j,n){ grid[i]+='0'; res[i]+='H'; cev[i]+='0'; } } int ans; bool f=false; FOR(i,n){ FOR(j,n){ grid[i][j]='1'; } cout<<'?'<<endl; FOR(i,n) cout<<grid[i]<<endl; cin>>ans; int once=ans; if(ans!=n){ ans-=n; int vert=ans/(n-1); //kaç tanesi vertical int hort=n-vert; if(vert==n){ FOR(j,n) cev[i][j]='1'; f=true; break; } FOR(j,n){ if(vert==0) break; if(hort==0){ res[i][j]='V'; continue; } grid[i][j]='0'; cout<<'?'<<endl; FOR(i,n) cout<<grid[i]<<endl; cin>>ans; if(ans==once-(n-1)){ //this cell is vertical res[i][j]='V'; vert--; } else hort--; grid[i][j]='1'; } } //else all horizontal FOR(j,n){ grid[i][j]='0'; } } if(!f){ FOR(i,n){ FOR(j,n){ if(res[i][j]=='H'){ cev[i][j]='1'; break; } } } } cout<<"!"<<endl; FOR(i,n) cout<<cev[i]<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...