답안 #258123

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
258123 2020-08-05T11:52:45 Z mohammad 무지개나라 (APIO17_rainbow) C++14
0 / 100
3000 ms 2076 KB
#include "rainbow.h"
#include<bits/stdc++.h>
using namespace std;
 
#define endl "\n"
#define OR |
typedef long long ll ;
const ll ooo = 1e14 ;
const ll oo = 2e9 ;
const double PI = acos(-1) ;
const ll M = 1e9 + 7  ;
const int N = 10000010  ;

int r[4] = {1 , -1 , 0 , 0} ,
	c[4] = {0 , 0 , 1 , -1} ;
map<char,int> mp;
// map<int,bool> vis[200010];
int ln , lm , rn , rm;
string g[3];
set<pair<int,int>> s;

void init(int R, int C, int sr, int sc, int M, char *S) {
	mp['N'] = 1;
	mp['S'] = 0;
	mp['E'] = 2;
	mp['W'] = 3;
	for(int i = 1 ; i <= R ; ++i)
		for(int j = 0 ; j <= C ; ++j) g[i] += '.';
	g[sr][sc] = '#';
	for(int i = 0 ; i < M ; ++i){
		sr += r[mp[S[i]]];
		sc += c[mp[S[i]]];
		g[sr][sc] = '#';
	}

}

// void dfs(int i , int j){
// 	if(i == ln - 1 or j == lm - 1 or i == rn + 1 or j == rm + 1) return;
// 	if(g[i][j] == '#' or vis[i][j])return;
// 	s.erase({i,j});
// 	vis[i][j] = 1;
// 	for(int k = 0 ; k < 4; ++k){
// 		int nx = i + r[k] , ny = j + c[k];
// 		dfs(nx , ny);
// 	}
// }

//  g++ -Wall -lm -static -DEVAL -o rainbow -O2 rainbow.cpp grader.cpp -std=c++14
int colour(int ar, int ac, int br, int bc) {
	int ans = 0 ;
	int b = -1;
	for(int i = ac ; i <= bc ; ++i){
		if(ar == br){
			if(g[ar][i] == '.' && b == -1) ans++ , b = 0;
			if(g[ar][i] == '#') b = -1 ;
		}else{
			if((g[1][i] == '.' or g[2][i] == '.') && b == -1) ans++ , b = 0;
			if((g[1][i] == '#' && g[2][i] == '#') or 
				(i != ac &&  g[1][i] == '#' && g[2][i-1] == '#') or 
				(i != ac && g[2][i] == '#' && g[1][i-1] == '#')) b = -1 ;
		}
	}
	return ans ;
}
/*	
	s.clear();
	
	ln = ar;
	lm = ac;
	rn = br;
	rm = bc;
	for(int i = ar ; i <= br ; ++i){
		vis[i].clear();
		for(int j = ac ; j <= bc ; ++j) 
			if(g[i][j] != '#') s.insert({i , j});
	}
	while(!s.empty()){
		int x = s.begin()->first , y = s.begin()->second;
		// cout << x << ' ' << y << ' ' << ":" << endl;
		dfs(x , y); 
		// cout << endl;
		ans++;
	}
	return ans ;
*/
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 384 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB Output is correct
2 Correct 0 ms 256 KB Output is correct
3 Execution timed out 3092 ms 952 KB Time limit exceeded
4 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 256 KB Output is correct
2 Runtime error 6 ms 2076 KB Execution killed with signal 11 (could be triggered by violating memory limits)
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 384 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Runtime error 1 ms 384 KB Execution killed with signal 11 (could be triggered by violating memory limits)
2 Halted 0 ms 0 KB -