QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#85139#5235. Podwyżki [B]anhduc27011 60ms34488kbC++232.4kb2023-03-07 00:17:432023-03-07 00:17:45

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-07 00:17:45]
  • 评测
  • 测评结果:1
  • 用时:60ms
  • 内存:34488kb
  • [2023-03-07 00:17:43]
  • 提交

answer

/*
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#pragma GCC optimize("unroll-loops")
*/
#include<bits/stdc++.h>
using namespace std;
#define all(x) x.begin(), x.end()
#define len(x) ll(x.size())
#define eb emplace_back
#define PI 3.14159265359
#define fi first
#define se second
#define mp make_pair
#define pb push_back
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define BIT(x,i) (1&((x)>>(i)))
#define MASK(x) (1LL<<(x))
#define task "tnc"  
typedef long long ll;
const ll INF=1e18;
const int maxn=1e6+5;
const int mod=1e9+7;
const int mo=998244353;
using pi=pair<ll,ll>;
using vi=vector<ll>;
using pii=pair<pair<ll,ll>,ll>;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
int n,k;
vector<int>vt;
vector<int>pos[maxn];
int ok[maxn];
int a[maxn];
int ok1[maxn];
int k1;
int suf[maxn];
int pre[maxn];
void case2(){
	for(int i=1;i<n;i++){
		if(pre[i]>=suf[i+1]){
			cout<<"TAK\n";
			cout<<i;		
			return;
		}
	}
	cout<<"NIE\n";
}
void case3(){
	int mi=a[1];
	int cntmi=1;
	int ma=a[1];
	int cntma=1;
	for(int i=2;i<=n;i++){
		if(mi==a[i]){
			cntmi++;
		}
		else if(mi>a[i]){
			mi=a[i];
			cntmi++;
		}
		if(ma==a[i]){
			cntma++;
		}
		else if(ma>a[i]){
			cntma++;
		}
	}
	if(a[1]== mi && a[n]==ma && cntmi==1 && cntma==1){
		cout<<"NIE\n";
		return;
	}
	cout<<"TAK\n";
	for(int i=2;i<=n;i++){
		if(a[i]== ma ||a[i]==mi ){
			cout<<i-1<<" "<<i<<"\n";
		}
	}
	return;
}
void case4(){
	int check=0;
	for(int i=1;i<n;i++){
		if(a[i]>a[i+1]){
			ok[i]=1;
			ok[i-1]=1;
			ok[i+1]=1;
			k-=3;
			check=1;
		}
	}
	if(check==0){
		cout<<"NIE\n";
		return ;
	}
	if(ok[n]==0){
		ok[n]=1;
		k--;
	}
	for(int i=1;i<=n;i++){
		if(ok[i]==0 && k>0){
			ok[i]=1;
			k--;
		}
	}
	cout<<"TAK\n";
	for(int i=1;i<n;i++){
		if(ok[i])cout<<i<<" ";
	}
}
signed main()
{
	cin.tie(0),cout.tie(0)->sync_with_stdio(0);
    //freopen(task".inp" , "r" , stdin);
    //freopen(task".out" , "w" , stdout);
    cin>>n>>k;
    for(int i=1;i<=n;i++){
    	cin>>a[i];
    	vt.pb(a[i]);
    }
    suf[n]=a[n];
    for(int i=n-1;i>=1;i--){
    	suf[i]=max(a[i],suf[i+1]);
    }
    pre[1]=a[1];
    for(int i=2;i<=n;i++){
    	pre[i]=min(pre[i-1],a[i]);
    }
    if(k==2)case2();
    else if(k==3)case3();
    else case4();
    return 0;
}


详细

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 0
Wrong Answer
time: 3ms
memory: 26868kb

input:

20 3
500000006 500000017 500000029 500000035 500000043 500000059 500000193 500000072 500000086 500000093 500000102 500000113 500000128 500000138 500000148 500000156 500000161 500000176 500000185 500000193

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #2:

score: 0
Wrong Answer

Test #15:

score: 1
Accepted
time: 4ms
memory: 26864kb

input:

513 3
500000008 500000018 500000028 500000031 500000049 500000057 500000068 500000073 500000088 500000096 500000109 500000117 500000121 500000135 500000149 500000155 500000162 500000175 500000183 500000193 500000206 500000215 500000221 500000239 500000244 500000256 500000265 500000279 500000289 5000...

output:

TAK
230 231

result:

ok good solution

Test #16:

score: -1
Wrong Answer
time: 4ms
memory: 26876kb

input:

512 3
500000004 500000013 500000025 500000039 500000043 500000054 500000068 500000078 500000089 500000092 500000101 500000111 500000125 500000136 500000141 500000153 500000162 500000179 500000185 500000199 500000208 500000218 500000226 500000239 500000246 500000253 500000268 500000278 500000282 5000...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #3:

score: 0
Wrong Answer

Test #26:

score: 1
Accepted
time: 2ms
memory: 26920kb

input:

1025 3
5 15 24 38 48 55 66 72 90 100 105 120 126 132 149 158 164 179 187 192 206 217 223 235 245 258 266 276 286 297 308 317 322 339 349 354 365 379 384 398 410 414 423 433 442 455 469 480 484 495 506 520 526 533 546 556 565 580 587 599 607 617 628 634 646 658 667 675 686 700 709 714 729 740 744 760...

output:

TAK
312 313

result:

ok good solution

Test #27:

score: -1
Wrong Answer
time: 4ms
memory: 26912kb

input:

2000 3
500000003 500000018 500000029 500000036 500000047 500000057 500000068 500000074 500000086 500000099 500000101 500000114 500000124 500000138 500000149 500000151 500000163 500000171 500000188 500000197 500000205 500000212 500000226 500000239 500000248 500000256 500000263 500000274 500000282 500...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #4:

score: 0
Wrong Answer

Test #38:

score: 1
Accepted
time: 5ms
memory: 26992kb

input:

1024 3
9 15 30 37 45 58 69 78 84 97 108 112 122 140 148 154 166 176 185 195 208 213 227 235 243 252 264 274 284 299 310 317 325 338 348 359 364 375 384 400 410 419 425 439 448 459 468 477 487 498 504 516 525 538 549 558 563 574 583 594 602 613 622 634 648 658 668 674 686 697 702 713 728 738 742 754 ...

output:

TAK
858 859

result:

ok good solution

Test #39:

score: -1
Wrong Answer
time: 8ms
memory: 26960kb

input:

2000 3
500000001 500000016 500000026 500000036 500000044 500000052 500000064 500000076 500000083 500000093 500000104 500000119 500000122 500000135 500000149 500000156 500000169 500000176 500000182 500000199 500000207 500000214 500000229 500000235 500000242 500000254 500000263 500000278 500000282 500...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #5:

score: 1
Accepted

Test #50:

score: 1
Accepted
time: 41ms
memory: 34392kb

input:

500000 2
96733 385679 36496 58364 157924 262087 114368 369679 399487 243135 300007 400425 143873 238383 376606 221831 362277 5424 143882 7322 83891 13321 464051 2125 317534 223350 355391 142109 446781 2753 377049 387945 57663 418272 16684 482728 300347 313882 41088 40295 38933 317354 168907 234092 2...

output:

NIE

result:

ok no solution

Test #51:

score: 0
Accepted
time: 39ms
memory: 34412kb

input:

500000 2
117389272 687154217 170919241 601221880 776757285 253352169 897265377 801718066 23223989 393553983 389363071 354656166 242297781 51907467 932025936 241442608 472378284 605075711 87145073 765793299 908330721 367947491 639266180 417184951 409818275 265875703 533223529 384404244 271797058 7634...

output:

NIE

result:

ok no solution

Test #52:

score: 0
Accepted
time: 22ms
memory: 34380kb

input:

500000 2
1 3 2 1 2 2 2 1 3 1 2 2 1 3 3 1 3 2 3 1 1 1 2 1 1 1 1 3 3 2 1 3 1 2 3 3 1 2 3 3 3 3 3 3 1 3 3 3 1 1 2 2 2 3 1 3 2 2 1 3 1 1 2 2 2 1 3 1 1 3 3 1 2 1 1 2 1 1 2 3 3 3 2 2 1 2 1 2 1 1 2 2 3 3 2 3 3 3 3 1 1 1 2 1 3 3 2 1 1 1 2 3 2 2 3 2 2 3 2 3 3 2 1 3 2 3 3 3 3 2 1 2 1 3 1 3 3 3 1 1 1 3 2 3 3 3...

output:

TAK
499999

result:

ok good solution

Test #53:

score: 0
Accepted
time: 30ms
memory: 34344kb

input:

500000 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2...

output:

TAK
1

result:

ok good solution

Test #54:

score: 0
Accepted
time: 30ms
memory: 34472kb

input:

500000 2
108603 474541 261977 447513 285402 383780 239206 497512 475159 380581 317915 169919 340077 380992 471386 463330 429671 113679 496283 173043 449384 156244 319985 135355 282262 345239 218012 367654 219736 305927 307901 427184 271860 204339 150715 188313 216277 157300 222028 310633 404004 1446...

output:

TAK
221241

result:

ok good solution

Test #55:

score: 0
Accepted
time: 17ms
memory: 34416kb

input:

500000 2
22 24 30 30 27 22 24 26 26 25 30 26 27 28 30 29 22 25 28 27 22 25 28 28 28 26 23 23 22 24 23 29 23 22 24 26 23 22 29 30 30 28 30 26 29 23 22 27 29 23 26 27 25 24 28 24 24 22 30 29 27 24 30 27 27 28 26 25 26 26 27 27 24 24 30 24 30 27 25 30 29 22 30 29 24 23 25 29 28 29 29 22 30 22 24 29 24 ...

output:

TAK
485762

result:

ok good solution

Test #56:

score: 0
Accepted
time: 35ms
memory: 34416kb

input:

500000 2
1000010 1000019 1000032 1000041 1000051 1000059 1000070 1000078 1000089 1000097 1000110 1000120 1000131 1000139 1000148 1000156 1000166 1000176 1000187 1000199 1000210 1000217 1000234 1000240 1000247 1000261 1000267 1000282 1000287 1000303 1000311 1000317 1000328 1000342 1000346 1000358 100...

output:

TAK
499999

result:

ok good solution

Test #57:

score: 0
Accepted
time: 42ms
memory: 34416kb

input:

499999 2
100014 100002 100023 100039 100043 100056 100068 100076 100084 100091 100106 100114 100121 100138 100141 100153 100162 100172 100185 100194 100208 100219 100222 100233 100241 100256 100263 100273 100285 100299 100304 100314 100328 100335 100348 100355 100362 100379 100387 100394 100402 1004...

output:

NIE

result:

ok no solution

Subtask #6:

score: 0
Wrong Answer

Test #58:

score: 1
Accepted
time: 40ms
memory: 34416kb

input:

500000 3
500000003 500000017 500000027 500000036 500000043 500000054 500000066 500000078 500000082 500000094 500000104 500000114 500000123 500000133 500000147 500000158 500000169 500000178 500000181 500000191 500000203 500000212 500000221 500000235 500000247 500000254 500000266 500000271 500000283 5...

output:

TAK
5105 5106

result:

ok good solution

Test #59:

score: -1
Wrong Answer
time: 43ms
memory: 34488kb

input:

500000 3
8 18 25 36 46 52 64 73 86 95 102 117 122 135 149 154 170 173 184 198 202 219 227 235 243 255 265 274 284 298 302 314 323 333 342 356 362 379 383 400 406 415 422 433 450 460 462 478 482 494 509 518 523 532 549 553 570 572 582 592 604 615 625 633 643 659 666 673 683 696 704 720 726 737 743 75...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #7:

score: 0
Wrong Answer

Test #67:

score: 0
Wrong Answer
time: 21ms
memory: 30012kb

input:

200000 3
2 20 22 38 44 53 70 76 82 100 102 120 128 137 148 159 168 178 186 199 203 218 222 232 242 255 270 275 287 293 308 318 329 340 345 356 368 377 390 394 407 415 428 436 442 452 463 478 485 493 510 515 524 539 549 555 565 573 588 595 608 618 622 640 642 653 662 673 689 700 710 713 727 735 748 7...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #8:

score: 0
Wrong Answer

Test #80:

score: 1
Accepted
time: 26ms
memory: 30752kb

input:

262145 3
6 13 24 38 49 58 62 78 88 96 102 117 130 139 147 152 169 179 184 199 206 217 222 237 245 260 264 279 286 296 303 312 330 336 345 357 362 379 390 399 405 415 425 432 450 453 467 480 488 497 505 520 523 535 548 559 565 576 585 600 608 617 630 636 648 652 662 677 684 700 706 715 726 738 747 75...

output:

TAK
42092 42093

result:

ok good solution

Test #81:

score: -1
Wrong Answer
time: 60ms
memory: 31440kb

input:

299999 3
5 19 27 40 44 52 70 75 85 99 108 112 129 140 148 156 166 172 188 196 204 214 227 235 249 257 267 272 288 294 305 312 326 339 344 359 370 374 390 397 405 415 426 436 450 456 466 479 483 498 509 515 524 535 546 555 568 574 582 596 610 620 623 636 645 653 664 673 683 694 702 712 727 738 743 76...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #9:

score: 0
Wrong Answer

Test #92:

score: 0
Wrong Answer
time: 34ms
memory: 30676kb

input:

262146 3
5 19 27 40 44 52 70 75 85 99 108 112 129 140 148 156 166 172 188 196 204 214 227 235 249 257 267 272 288 294 305 312 326 339 344 359 370 374 390 397 405 415 426 436 450 456 466 479 483 498 509 515 524 535 546 555 568 574 582 596 610 620 623 636 645 653 664 673 683 694 702 712 727 738 743 76...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected

Subtask #10:

score: 0
Wrong Answer

Test #106:

score: 0
Wrong Answer
time: 33ms
memory: 34344kb

input:

499999 3
6 13 24 38 49 58 62 78 88 96 102 117 130 139 147 152 169 179 184 199 206 217 222 237 245 260 264 279 286 296 303 312 330 336 345 357 362 379 390 399 405 415 425 432 450 453 467 480 488 497 505 520 523 535 548 559 565 576 585 600 608 617 630 636 648 652 662 677 684 700 706 715 726 738 747 75...

output:

TAK

result:

wrong output format Unexpected end of file - int32 expected