QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#547228#9221. Missing BoundariesFXLY_awa#WA 35ms11240kbC++173.4kb2024-09-04 19:23:552024-09-04 19:23:57

Judging History

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

  • [2024-09-04 19:23:57]
  • 评测
  • 测评结果:WA
  • 用时:35ms
  • 内存:11240kb
  • [2024-09-04 19:23:55]
  • 提交

answer

#include <bits/stdc++.h>

using namespace std;

/*****************************************************************   Template Start  **************************************************************************/



/*****************************************************************    Define Start   **************************************************************************/
typedef long long                               ll;
typedef unsigned long long                      ull;
#define int                                     long long
#define itn                                     int
#define endl                                    '\n'
#define Endl                                    endl
#define ednl                                    endl
#define al(a)                                   (a).begin(),(a).end()
#define all(a)                                  (a).begin()+1,(a).end()
#define debug(x)                                {cerr<<"ss:"<<x<<endl;}
#define qdebug(x)                               {cerr<<"ss:";for(auto i:x)cout<<i<<" ";cout<<endl;}
#define lowbit(x)                               (x&-x)
#define vi                                      vector<int>
#define pii                                     pair<int,int>
#define pb                                      push_back
#define fs                                      first
#define sc                                      second


constexpr long long maxlonglong = 9223372036854775807;   //9e18
constexpr int maxint = 2147483647;      //2e9
constexpr int INF = 0x7f7f7f7f; //2139062143
constexpr int M = 1e9 + 7;
constexpr int mod =  998244353;
constexpr int p = 0x1F351F35; // good hash number.
const double pi = acos(-1.0);

mt19937_64 rnd(time(0));
constexpr int N=1231564;



inline void solve(){
    int n,L;cin>>n>>L;
    vector<array<int,3>> a;
    int cnt=0;
    for(int i=1;i<=n;i++){
        int x,y;cin>>x>>y;
        if(x==-1&&y==-1)cnt++;
        else if(x==-1){
            a.push_back({y,y,1});
        }
        else if(y==-1){
            a.push_back({x,x,2});
        }
        else a.push_back({x,y,0});
    }
    sort(al(a));
    int l=0,mx=L;
    for(int i=0;i<a.size();i++){
        mx-=a[i][1]-a[i][0]+1;
        if(a[i][0]==l+1){
            l=a[i][1];
        }
        else {
            if(a[i-1][2]==2||a[i][2]==1){
                l=a[i][1];
            }
            else if(cnt){
                l=a[i][1];
                cnt--;
            }
            else {
                cout<<"NIE"<<endl;
                return;
            }
        }
    }
    if(cnt>mx){
        cout<<"NIE"<<endl;
        return;
    }
    if(a.size()==0&&cnt){
        cout<<"TAK"<<Endl;
        return;
    }
    if(l==L){
        cout<<"TAK"<<Endl;
        return;
    }
    if(a.back()[2]==2||cnt){
        cout<<"TAK"<<Endl;
        return;
    }
    else cout<<"NIE"<<endl;
}





signed main()
{
    //freopen("E:\work tool\code document\data\input.in", "r", stdin);
	//freopen("E:\work tool\code document\data\output.out", "w", stdout);
    ios::sync_with_stdio(false);
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);    //关闭同步  如果使用 则不要使用<cstdio>
    // cout << fixed << setprecision(10);
    int T=1;
    cin>>T;
    while(T--){
        solve();
    }
    return 0;
}



详细

Test #1:

score: 100
Accepted
time: 0ms
memory: 3692kb

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: 0
Accepted
time: 35ms
memory: 11240kb

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:

TAK

result:

ok single line: 'TAK'

Test #3:

score: 0
Accepted
time: 0ms
memory: 3700kb

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 #4:

score: 0
Accepted
time: 28ms
memory: 9920kb

input:

1
197838 400000
34167 34169
352180 -1
235963 -1
-1 -1
160401 160405
347288 -1
270353 270354
214502 214504
183243 183245
-1 -1
-1 36193
-1 -1
-1 17557
273498 273500
269137 -1
395099 395100
285515 285518
-1 -1
71041 71042
324060 -1
-1 385151
-1 379645
-1 -1
-1 185142
-1 191584
89259 89261
328347 32834...

output:

TAK

result:

ok single line: 'TAK'

Test #5:

score: -100
Wrong Answer
time: 24ms
memory: 8072kb

input:

2
97340 150000
-1 101927
105937 -1
-1 107253
-1 47307
110550 -1
84061 84062
125176 125177
-1 15915
29617 -1
-1 -1
-1 43147
115958 -1
101807 101808
24866 -1
66826 66828
-1 31640
-1 5610
1281 1284
-1 -1
-1 -1
-1 73973
-1 2945
29064 -1
30653 -1
-1 63714
-1 -1
141389 141390
-1 27465
57358 -1
47388 47389...

output:

TAK
TAK

result:

wrong answer 1st lines differ - expected: 'NIE', found: 'TAK'