Submission #1484471


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(deque<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 solve(){
	int N;
	cin >> N;
	
	deque<int> ans;
	int pos = -1;
	while(1){//右に伸ばす
		ans.push_back(0);
		++pos;
		bool flag = false;
		for(int i=0;i<4;++i){
			ans[pos] = i;
			if( check( ans ) ){
				flag = true;
				if( END ){
					return;
				}
				break;
			}
		}
		if( flag == false ){//右に伸ばす4通りがダメだった
			ans.pop_back();//右の伸ばしたものを消す。
			break;
		}
	}

	while(1){//左に伸ばす
		ans.push_front(0);
		for(int i=0;i<4;++i){
			ans[0] = i;
			if( check( ans ) ){
				if( END ){
					return;
				}
				break;
			}
		}
	}
}

#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 150
Code Size 2466 Byte
Status AC
Exec Time 16 ms
Memory 724 KB

Judge Result

Set Name All
Score / Max Score 150 / 150
Status
AC × 70
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 AC 4 ms 724 KB
00_small_01.txt AC 4 ms 724 KB
00_small_02.txt AC 4 ms 716 KB
00_small_03.txt AC 4 ms 720 KB
00_small_04.txt AC 4 ms 720 KB
00_small_05.txt AC 4 ms 720 KB
00_small_06.txt AC 4 ms 724 KB
00_small_07.txt AC 4 ms 724 KB
00_small_08.txt AC 4 ms 720 KB
00_small_09.txt AC 4 ms 724 KB
10_medium_10.txt AC 7 ms 724 KB
10_medium_11.txt AC 7 ms 724 KB
10_medium_12.txt AC 7 ms 724 KB
10_medium_13.txt AC 7 ms 724 KB
10_medium_14.txt AC 7 ms 720 KB
10_medium_15.txt AC 7 ms 724 KB
10_medium_16.txt AC 7 ms 720 KB
10_medium_17.txt AC 7 ms 720 KB
10_medium_18.txt AC 7 ms 716 KB
10_medium_19.txt AC 7 ms 724 KB
20_large_20.txt AC 11 ms 724 KB
20_large_21.txt AC 11 ms 724 KB
20_large_22.txt AC 11 ms 720 KB
20_large_23.txt AC 12 ms 720 KB
20_large_24.txt AC 11 ms 724 KB
20_large_25.txt AC 11 ms 724 KB
20_large_26.txt AC 12 ms 724 KB
20_large_27.txt AC 12 ms 592 KB
20_large_28.txt AC 11 ms 596 KB
20_large_29.txt AC 12 ms 720 KB
20_large_30.txt AC 11 ms 724 KB
20_large_31.txt AC 12 ms 712 KB
20_large_32.txt AC 11 ms 716 KB
20_large_33.txt AC 11 ms 596 KB
20_large_34.txt AC 11 ms 724 KB
20_large_35.txt AC 12 ms 724 KB
20_large_36.txt AC 11 ms 588 KB
20_large_37.txt AC 12 ms 592 KB
20_large_38.txt AC 11 ms 724 KB
20_large_39.txt AC 12 ms 724 KB
20_large_40.txt AC 11 ms 720 KB
20_large_41.txt AC 11 ms 724 KB
20_large_42.txt AC 11 ms 724 KB
20_large_43.txt AC 12 ms 720 KB
20_large_44.txt AC 12 ms 716 KB
20_large_45.txt AC 11 ms 720 KB
20_large_46.txt AC 12 ms 720 KB
20_large_47.txt AC 11 ms 720 KB
20_large_48.txt AC 12 ms 716 KB
20_large_49.txt AC 11 ms 720 KB
30_large_50.txt AC 6 ms 724 KB
30_large_51.txt AC 13 ms 720 KB
30_large_52.txt AC 10 ms 724 KB
30_large_53.txt AC 16 ms 596 KB
40_large_54.txt AC 7 ms 720 KB
40_large_55.txt AC 13 ms 720 KB
40_large_56.txt AC 10 ms 724 KB
40_large_57.txt AC 15 ms 724 KB
40_large_58.txt AC 7 ms 724 KB
40_large_59.txt AC 13 ms 724 KB
40_large_60.txt AC 10 ms 724 KB
40_large_61.txt AC 16 ms 724 KB
40_large_62.txt AC 6 ms 720 KB
40_large_63.txt AC 13 ms 720 KB
40_large_64.txt AC 10 ms 724 KB
40_large_65.txt AC 16 ms 724 KB
40_large_66.txt AC 7 ms 720 KB
40_large_67.txt AC 13 ms 724 KB
40_large_68.txt AC 10 ms 716 KB
40_large_69.txt AC 16 ms 724 KB