Subtask #0 满江红
查看原帖
Subtask #0 满江红
1241180
SBro楼主2024/8/19 10:05

WA记录

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

ll q;
vector<ll>a;

int main(){
	
	ios::sync_with_stdio(0);
	cin.tie(0);cout.tie(0);
	
	a.push_back(-2147483647);
	a.push_back(2147483647);
	
	cin>>q;
	ll op,x;
	while(q--){
		cin>>op>>x;
		switch(op){
			case 1:{
				
				ll l,r,mid;
				l = 1;
				r = a.size()-2;
				while(l<r){
					mid = (l+r)/2;
					if(a[mid]<x) l = mid+1;
					else if(a[mid] == x){
						l = mid;
						break;
					}
					else r = mid;
				}
				cout<<l<<'\n';
				
				break;
			}
			case 2:{
				cout<<a[x]<<'\n';
				break;
			}
			case 3:{
				
				ll l,r,mid;
				l = 0;
				r = a.size()-1;
				while(l<r){
					mid = (l+r)/2;
					if(a[mid]<x) l = mid+1;
					else if(a[mid] == x){
						l = mid;
						break;
					}
					else r = mid;
				}
				
				cout<<a[l-1]<<'\n';
				
				break;
			}
			case 4:{
				
				ll l,r,mid;
				l = 0;
				r = a.size()-1;
				while(l<r){
					mid = (l+r)/2;
					if(a[mid]<x) l = mid+1;
					else if(a[mid] == x){
						l = mid;
						break;
					}
					else r = mid;
				}
				cout<<a[l+1]<<'\n';
				
				break;
			}
			case 5:{
				a.push_back(x);
				
				for(ll i = a.size()-2;i > 0;i--){
					if(a[i]>a[i+1]) swap(a[i],a[i+1]);
					else break;
				}
				
				break;
			}
		}
	}
	
	
	return 0;
}
2024/8/19 10:05
加载中...