Submission #1484428
Source Code Expand
#pragma region include #include <iostream> #include <iomanip> #include <stdio.h> #include <sstream> #include <algorithm> #include <cmath> #include <complex> #include <string> #include <cstring> #include <vector> #include <tuple> #include <bitset> #include <queue> #include <complex> #include <set> #include <map> #include <stack> #include <list> #include <fstream> #include <random> //#include <time.h> #include <ctime> #pragma endregion //#include ///////// #define REP(i, x, n) for(int i = x; i < n; ++i) #define rep(i,n) REP(i,0,n) #define ALL(X) X.begin(), X.end() ///////// #pragma region typedef typedef long long LL; typedef long double LD; typedef unsigned long long ULL; typedef std::pair<LL,LL> PLL;// typedef std::pair<int,int> PII;// #pragma endregion //typedef ////定数 const int INF = (int)1e9; const LL MOD = (LL)1e9+7; const LL LINF = (LL)1e18+20; const double PI = acos(-1.0); const double EPS = 1e-9; ///////// using namespace::std; bool END = false; int ENDcount = 0; vector< vector< vector<int> > > word(7); bool check(vector<int> v){ ++ENDcount; if( ENDcount > 420 ){ END = true; return true; } int size = v.size(); string A,B; for(int i=0;i<size;++i){ if( v[i]&1 ){ A += '#'; }else{ A += '.'; } if( v[i]&2 ){ B += '#'; }else{ B += '.'; } } cout << A << '\n' << B << endl; string res; cin >> res; if( res[0] == 'T' ){ return true; }else if( res[0] == 'F' ){ return false; } END = true; return true; } void make(int POW ){ if( POW == 0 ){ vector<int> temp(1); for(int i=0;i<4;++i){ temp[0] = i; if( check( temp ) ){ word[POW].push_back( temp ); } } return; } vector< vector<int> >::iterator itrA,itrB,begin,end; begin = word[POW-1].begin(); end = word[POW-1].end(); for(itrA=begin;itrA != end;++itrA){ for(itrB=begin;itrB != end;++itrB){ vector<int> temp; temp.reserve( 1<<POW ); temp.insert( temp.end(), itrA->begin(),itrA->end() ); temp.insert( temp.end(), itrB->begin(),itrB->end() ); if( check( temp ) ){ word[POW].push_back( temp ); } } } } void f(int N,int POW){ int LEN = (1<<POW); int over =2*LEN-N; vector< vector<int> >::iterator itrA,itrB,begin,end; begin = word[POW].begin(); end = word[POW].end(); vector<int> temp(N); for(itrA=begin;itrA != end;++itrA){ for(itrB=begin;itrB != end;++itrB){ bool flag = true; for(int i=0;i<over;++i){ if( itrA[LEN-1-i] != itrB[over-1-i] ){ flag = false; break; } } if( flag == false ) continue; for(int i=0;i<N;++i){ if( i < LEN ){ temp[i] = (*itrA)[i]; }else{ temp[i] = (*itrB)[i-(N-LEN)]; } } if( check( temp ) ){ if( END ){ return; } } } } } void solve(){ int N; cin >> N; int Len = 0; for(Len=0;(1<<Len)<=N;++Len){ make(Len); if( END ){ return; } } Len >>= 1; f(N,Len); } #pragma region main signed main(void){ std::cin.tie(0); std::ios::sync_with_stdio(false); std::cout << std::fixed;//小数を10進数表示 cout << setprecision(16);//小数点以下の桁数を指定//coutとcerrで別 solve(); } #pragma endregion //main()
Submission Info
Submission Time | |
---|---|
Task | D - Long Blackboard |
User | akarin55 |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 3293 Byte |
Status | QLE |
Exec Time | 18 ms |
Memory | 1236 KB |
Judge Result
Set Name | All | ||||
---|---|---|---|---|---|
Score / Max Score | 0 / 150 | ||||
Status |
|
Set Name | Test Cases |
---|---|
All | 00_small_00.txt, 00_small_01.txt, 00_small_02.txt, 00_small_03.txt, 00_small_04.txt, 00_small_05.txt, 00_small_06.txt, 00_small_07.txt, 00_small_08.txt, 00_small_09.txt, 10_medium_10.txt, 10_medium_11.txt, 10_medium_12.txt, 10_medium_13.txt, 10_medium_14.txt, 10_medium_15.txt, 10_medium_16.txt, 10_medium_17.txt, 10_medium_18.txt, 10_medium_19.txt, 20_large_20.txt, 20_large_21.txt, 20_large_22.txt, 20_large_23.txt, 20_large_24.txt, 20_large_25.txt, 20_large_26.txt, 20_large_27.txt, 20_large_28.txt, 20_large_29.txt, 20_large_30.txt, 20_large_31.txt, 20_large_32.txt, 20_large_33.txt, 20_large_34.txt, 20_large_35.txt, 20_large_36.txt, 20_large_37.txt, 20_large_38.txt, 20_large_39.txt, 20_large_40.txt, 20_large_41.txt, 20_large_42.txt, 20_large_43.txt, 20_large_44.txt, 20_large_45.txt, 20_large_46.txt, 20_large_47.txt, 20_large_48.txt, 20_large_49.txt, 30_large_50.txt, 30_large_51.txt, 30_large_52.txt, 30_large_53.txt, 40_large_54.txt, 40_large_55.txt, 40_large_56.txt, 40_large_57.txt, 40_large_58.txt, 40_large_59.txt, 40_large_60.txt, 40_large_61.txt, 40_large_62.txt, 40_large_63.txt, 40_large_64.txt, 40_large_65.txt, 40_large_66.txt, 40_large_67.txt, 40_large_68.txt, 40_large_69.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_small_00.txt | WA | 8 ms | 720 KB |
00_small_01.txt | WA | 8 ms | 720 KB |
00_small_02.txt | WA | 8 ms | 724 KB |
00_small_03.txt | WA | 8 ms | 596 KB |
00_small_04.txt | WA | 8 ms | 720 KB |
00_small_05.txt | WA | 8 ms | 720 KB |
00_small_06.txt | WA | 9 ms | 720 KB |
00_small_07.txt | WA | 8 ms | 592 KB |
00_small_08.txt | WA | 9 ms | 724 KB |
00_small_09.txt | WA | 7 ms | 716 KB |
10_medium_10.txt | QLE | 15 ms | 852 KB |
10_medium_11.txt | QLE | 15 ms | 844 KB |
10_medium_12.txt | QLE | 15 ms | 720 KB |
10_medium_13.txt | QLE | 13 ms | 848 KB |
10_medium_14.txt | QLE | 16 ms | 848 KB |
10_medium_15.txt | QLE | 16 ms | 848 KB |
10_medium_16.txt | QLE | 16 ms | 848 KB |
10_medium_17.txt | QLE | 16 ms | 720 KB |
10_medium_18.txt | QLE | 15 ms | 852 KB |
10_medium_19.txt | QLE | 16 ms | 848 KB |
20_large_20.txt | QLE | 17 ms | 1228 KB |
20_large_21.txt | QLE | 17 ms | 1228 KB |
20_large_22.txt | QLE | 17 ms | 1104 KB |
20_large_23.txt | QLE | 17 ms | 1232 KB |
20_large_24.txt | QLE | 17 ms | 1232 KB |
20_large_25.txt | QLE | 17 ms | 1104 KB |
20_large_26.txt | QLE | 18 ms | 1236 KB |
20_large_27.txt | QLE | 16 ms | 1228 KB |
20_large_28.txt | QLE | 17 ms | 1232 KB |
20_large_29.txt | QLE | 17 ms | 1104 KB |
20_large_30.txt | QLE | 17 ms | 1228 KB |
20_large_31.txt | QLE | 17 ms | 1104 KB |
20_large_32.txt | QLE | 17 ms | 1104 KB |
20_large_33.txt | QLE | 17 ms | 1104 KB |
20_large_34.txt | QLE | 17 ms | 1104 KB |
20_large_35.txt | QLE | 16 ms | 1104 KB |
20_large_36.txt | QLE | 17 ms | 1236 KB |
20_large_37.txt | QLE | 17 ms | 1104 KB |
20_large_38.txt | QLE | 18 ms | 1104 KB |
20_large_39.txt | QLE | 17 ms | 1104 KB |
20_large_40.txt | QLE | 17 ms | 1100 KB |
20_large_41.txt | QLE | 17 ms | 1104 KB |
20_large_42.txt | QLE | 17 ms | 1104 KB |
20_large_43.txt | QLE | 16 ms | 1108 KB |
20_large_44.txt | QLE | 17 ms | 1100 KB |
20_large_45.txt | QLE | 16 ms | 1104 KB |
20_large_46.txt | QLE | 17 ms | 1104 KB |
20_large_47.txt | QLE | 18 ms | 1104 KB |
20_large_48.txt | QLE | 17 ms | 1236 KB |
20_large_49.txt | QLE | 17 ms | 1232 KB |
30_large_50.txt | WA | 3 ms | 720 KB |
30_large_51.txt | WA | 3 ms | 592 KB |
30_large_52.txt | WA | 3 ms | 720 KB |
30_large_53.txt | WA | 3 ms | 716 KB |
40_large_54.txt | QLE | 16 ms | 848 KB |
40_large_55.txt | QLE | 16 ms | 716 KB |
40_large_56.txt | QLE | 17 ms | 724 KB |
40_large_57.txt | QLE | 16 ms | 848 KB |
40_large_58.txt | QLE | 17 ms | 976 KB |
40_large_59.txt | QLE | 15 ms | 844 KB |
40_large_60.txt | QLE | 16 ms | 1104 KB |
40_large_61.txt | QLE | 16 ms | 712 KB |
40_large_62.txt | QLE | 16 ms | 724 KB |
40_large_63.txt | QLE | 16 ms | 720 KB |
40_large_64.txt | QLE | 16 ms | 844 KB |
40_large_65.txt | QLE | 16 ms | 720 KB |
40_large_66.txt | QLE | 17 ms | 724 KB |
40_large_67.txt | QLE | 16 ms | 848 KB |
40_large_68.txt | QLE | 16 ms | 972 KB |
40_large_69.txt | QLE | 15 ms | 848 KB |