SPJ 已修复,但是可能还有点问题...?
查看原帖
SPJ 已修复,但是可能还有点问题...?
741244
Eason_cyx大愚若智楼主2024/11/28 22:48

rt,可以提交了。

但是会出现神秘 UKE。

代码扔这:

#include <bits/stdc++.h>
#include "testlib.h"
using namespace std;
int x[1000005],y[1000005],minx[1000005],maxx[1000005],miny[1000005],maxy[1000005];
map<int,int> mp_x,mp_y;
int main(int argc,char** argv) {
	registerTestlibCmd(argc,argv);
	memset(minx,0x3f,sizeof minx); memset(miny,0x3f,sizeof miny);
	int n = inf.readInt();
	for(int i = 1;i <= n;i++) {
		x[i] = inf.readInt(); y[i] = inf.readInt();
	} string s = ouf.readToken();
	for(int i = 0;i < n;i++) {
		if(s[i] == '1') {
			i++;
			mp_x[x[i]]++; mp_y[y[i]]++;
			if(mp_x[x[i]] > 2 || mp_y[y[i]] > 2) quitf(_wa, "Invalid Answer. Not Meeting The First Or The Second Conditions.");
			minx[x[i]] = min(minx[x[i]],y[i]); maxx[x[i]] = max(maxx[x[i]],y[i]); miny[y[i]] = min(miny[y[i]],x[i]); maxy[y[i]] = max(maxy[y[i]],x[i]); 
			i--;
		}
	}
	for(int i = 1;i <= n;i++) {
		if(s[i-1] == '1') continue;
		if(minx[x[i]] <= y[i] && y[i] <= maxx[x[i]]) continue;
		if(miny[y[i]] <= x[i] && x[i] <= maxy[y[i]]) continue;
		quitf(_wa, "Invalid Answer. Not Meeting The Third Conditions. %d %d %d",i,minx[x[i]],maxx[x[i]]);
	} quitf(_ok,"Accepted! Orz!");
	return 0;
}
2024/11/28 22:48
加载中...