QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#88096#2301. Jet SetBitrollWA 0ms3356kbC++111.3kb2023-03-15 10:21:292023-03-15 10:21:30

Judging History

你现在查看的是最新测评结果

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-03-15 10:21:30]
  • 评测
  • 测评结果:WA
  • 用时:0ms
  • 内存:3356kb
  • [2023-03-15 10:21:29]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;

// debug util
#ifdef DEBUG
    #define deb(x) cerr << #x << " = " << x << endl
#else
    #define deb(x)
#endif

// useful
#define ll long long
#define umap unordered_map
bool multi = false;

void solve(){
	int n;
	cin >> n;
	
	int firstVal;
	bool vis[720] = {};
	
	int from, to, bk;
	
	// get input
	for (int h = 0; h <= n; h++){
		cout << h << endl;

		if (h != n){
			cin >> to >> to;
		}
		else{
			to = firstVal;
		}

		to += 360;
		to %= 360;
		
		if (h == 0){
			firstVal = to;
			from = to;
			continue;
		}

		int i = from, j = to;
		
		if ((abs(j-i) != 180)){
			// make sure i is less than j
			if (i > j){
				bk = i;
				i = j;
				j = bk;
			}
			
			// get shortest path
			if ((j - i) > (360 - j + i)){
				bk = i;
				i = j;
				j = bk;
			}
		}

		int f = i;
		while (true){
			int s = f*2;
			vis[s] = true;
			
			if (f != j){
				vis[s+1] = true;
			}
			else{
				break;
			}

			f++;
			f %= 360;
		}

		from = to;
	}
	
	// check everything is visited
	
	for (int i = 0; i < 720; i++){
		if (!vis[i]){
			cout << "no" << endl;
			return;
		}
	}
	cout << "yes" << endl;
}

int main(){
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    int t=1;
    if(multi)cin>>t;
    while(t--)solve();
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 0
Wrong Answer
time: 0ms
memory: 3356kb

input:

6
0 -180
0 60
0 -60
0 -179
0 -60
0 60

output:

0
1
2
3
4
5
6
no

result:

wrong answer Wrong answer: expected 'yes' or 'no'.