QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#549459 | #9221. Missing Boundaries | lntano# | WA | 23ms | 4848kb | C++20 | 928b | 2024-09-06 15:48:55 | 2024-09-06 15:48:57 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
using ll=long long;
void solve(){
int n,l;
cin>>n>>l;
vector<int> b,L,R;
map<int,int> mp1,mp2;
int sum=0,k=n;
bool flag=1;
for(int i=1;i<=n;i++){
int x,y;
cin>>x>>y;
if(x!=-1&&y!=-1){
l-=y-x+1;
k--;
L.push_back(x);
R.push_back(y);
}
else if(x!=-1){
b.push_back(y);
if(mp1[y]){
flag=0;
}
mp1[y]=1;
}
else if(y!=-1){
b.push_back(x);
if(mp2[x]){
flag=0;
}
mp2[x]=1;
}
}
if(l<k||!flag){
cout<<"NIE\n";
return;
}
for(auto t:b){
auto it=lower_bound(R.begin(),R.end(),t);
if(it!=R.end()){
int p=it-R.begin();
if(t==R[p]||t>=L[p]){
flag=0;
break;
}
}
}
cout<<(flag?"TAK\n":"NIE\n");
}
int main(){
ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr);
int t=1;
cin>>t;
while(t--) solve();
return 0;
}
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3568kb
input:
3 4 51 1 -1 11 50 -1 -1 -1 10 3 2 -1 -1 -1 -1 -1 -1 2 3 1 2 2 3
output:
TAK NIE NIE
result:
ok 3 lines
Test #2:
score: -100
Wrong Answer
time: 23ms
memory: 4848kb
input:
1 200000 1000000000 490669427 -1 224278942 224287156 821104480 -1 861696576 861702036 807438935 807440055 574078002 574083717 465630141 -1 195378188 -1 -1 13500961 -1 977536179 92893115 -1 -1 661145418 -1 215804863 -1 685338515 544348999 -1 465532902 -1 130346949 -1 -1 526666304 635604584 635605404 ...
output:
NIE
result:
wrong answer 1st lines differ - expected: 'TAK', found: 'NIE'