请问为什么怎么执行取出都不取别的木头?
查看原帖
请问为什么怎么执行取出都不取别的木头?
680926
Secrifice楼主2022/2/27 20:10

如题,rt,样例里面一直是取出木头33333333

#include <bits/stdc++.h>
using namespace std;
int main (){
	map <int, int> a;
	int n, length, x;
	cin >> n;
	for(int i = 1; i <= n; i++){
		cin >> x >> length;
		if(x == 1){
			if(a.count(length) == 0){
				a[length] = 1;
			}else{
				cout << "Already Exist" << endl;
			}	
		}
		if(x == 2){
			if(a.count(length) == 1){
				cout << length << endl;
				a[length] = 0;
			}else{
				for(int i = 1; i <= 500000001; i++){
					if(a.count(length - i) == 1){
						cout << length - i << endl;
						break;
					}	
					if(a.count(length + i) == 1){
						cout << length + i << endl;
						break;
					}
					if(a.empty()){
						cout << "Empty";
					}	
				}
			}
		}
	}
} 
2022/2/27 20:10
加载中...