QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#647822#7279. Tricks of the Tradechenxinyang2006#20 2249ms28340kbC++204.3kb2024-10-17 15:50:332024-10-17 15:50:39

Judging History

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

  • [2024-10-17 15:50:39]
  • 评测
  • 测评结果:20
  • 用时:2249ms
  • 内存:28340kb
  • [2024-10-17 15:50:33]
  • 提交

answer

#include <bits/stdc++.h>
#define rep(i,j,k) for(int i=(j);i<=(k);i++)
#define per(i,j,k) for(int i=(j);i>=(k);i--)
#define uint unsigned int
#define ll long long
#define ull unsigned long long
#define db double
#define ldb long double
#define pii pair<int,int>
#define pll pair<ll,ll>
#define mkp make_pair
#define eb emplace_back
#define SZ(S) (int)S.size()
//#define mod 998244353
//#define mod 1000000007
#define inf 0x3f3f3f3f
#define linf 0x3f3f3f3f3f3f3f3f
using namespace std;

template <class T>
void chkmax(T &x,T y){
	if(x < y) x = y;
}

template <class T>
void chkmin(T &x,T y){
	if(x > y) x = y;
}

inline int popcnt(int x){
	return __builtin_popcount(x);
}

inline int ctz(int x){
	return __builtin_ctz(x);
}


/*ll power(ll p,int k = mod - 2){
	ll ans = 1;
	while(k){
		if(k % 2 == 1) ans = ans * p % mod;
		p = p * p % mod;
		k /= 2;	
	}
	return ans;
}*/
int n,K;
int a[250005],b[250005],output[250005],ord[250005];

namespace solver{
	int n,K;
	int a[250005],b[250005];
	ll ssum[250005];

	set <pii> C,D;
	ll cur;
	void dbg(){
		printf("cur=%lld\n",cur);
		for(pii I:C) printf("(%d,%d) ",I.first,I.second);
		printf("\n");
		for(pii I:D) printf("(%d,%d) ",I.first,I.second);
		printf("\n");
	}
	void add(int p){
	//	printf("add %d\n",p);
		if(SZ(C) < K){
			cur += b[p];
			C.insert(mkp(b[p],p));
			return;
		}else{
			auto it = C.begin();
			if(it->first < b[p]){
				cur -= it->first;
				cur += b[p];
				D.insert(mkp(it->first,it->second));
				C.erase(it);
				C.insert(mkp(b[p],p));
			}else{
				D.insert(mkp(b[p],p));
			}
		}
	}

	void del(int p){
		if(!p) return;
	//	printf("del %d\n",p);
		auto it = D.find(mkp(b[p],p));
		if(it != D.end()){
			D.erase(it);
			return;
		}
		it = C.find(mkp(b[p],p));
		assert(it != C.end());
		cur -= b[p];
		C.erase(it);
		if(D.empty()) return;
		it = prev(D.end());
		cur += it->first;
		C.insert(mkp(it->first,it->second));
		D.erase(it);
	}

	int pl,pr;
	ll eval(int l,int r){
		if(l > r) return -linf;
	//	printf("eval [%d,%d]\n",l,r);
		while(l < pl) add(--pl);
		while(r > pr) add(++pr);
		while(pl < l) del(pl++);
		while(pr > r) del(pr--);
	//	dbg();
		if(SZ(C) < K) return -linf;
		return cur - (ssum[r] - ssum[l - 1]); 
	}

	int type;//type=0 min/max
	ll ans[250005];
	int opt[250005];
	void solve(int l,int r,int L,int R){
		if(l > r) return;
		int mid = (l + r) >> 1;
		ans[mid] = -linf;opt[mid] = 1;
		rep(i,L,R){
			ll temp = eval(i,mid);
			if(temp == -linf || temp < ans[mid]) continue;
			if(temp > ans[mid] || type){
				ans[mid] = temp;
				opt[mid] = i;
			}
		}
		solve(l,mid - 1,L,opt[mid]);
		solve(mid + 1,r,opt[mid],R);
	}	
	void solve(int tp,int rev){
		if(rev){
			reverse(a + 1,a + n + 1);
			reverse(b + 1,b + n + 1);	
			tp ^= 1;		
		}
		type = tp;
		rep(i,1,n) ssum[i] = ssum[i - 1] + a[i];
		pl = 1;pr = 0;
		C.clear();D.clear();cur = 0;
		solve(1,n,1,n);
		if(rev){
			reverse(a + 1,a + n + 1);
			reverse(b + 1,b + n + 1);	
			reverse(ans + 1,ans + n + 1);
			reverse(opt + 1,opt + n + 1);
			rep(i,1,n) opt[i] = n + 1 - opt[i];		
		}
	}
}
int valid[2][250005],idx[250005],pl[250005],pr[250005];
bool cmp(int x,int y){
	return b[x] > b[y]; 
}

void cons(int l,int r){
//	printf("cons [%d,%d]\n",l,r);
	assert(r - l + 1 >= K);
	rep(i,l,r) ord[i] = i;
	sort(ord + l,ord + r + 1,cmp);
	rep(i,l,l + K - 1) output[ord[i]] = 1;
	rep(i,l + K,r){
		if(b[ord[i]] != b[ord[i - 1]]) break;
		output[ord[i]] = 1;
	}
}

int main(){
//	freopen("test.in","r",stdin);
//	freopen("test.out","w",stdout);
	scanf("%d%d",&n,&K);
	rep(i,1,n) scanf("%d",&a[i]);
	rep(i,1,n) scanf("%d",&b[i]);	
	solver::n = n;solver::K = K;
	rep(i,1,n){
		solver::a[i] = a[i];
		solver::b[i] = b[i];
	}
	solver::solve(0,0);
	ll answer = -linf;
	rep(i,1,n) chkmax(answer,solver::ans[i]);
	printf("%lld\n",answer);
	rep(i,1,n) valid[1][i] = (solver::ans[i] == answer);

	solver::solve(0,1);
	rep(i,1,n){
		valid[0][i] = (solver::ans[i] == answer);
		pl[i] = solver::opt[i];
	}
	solver::solve(1,1);
	rep(i,1,n) pr[i] = solver::opt[i];

	rep(i,1,n){
		if(valid[0][i]){
			cons(i,pl[i]);
			rep(k,pl[i] + 1,pr[i]) chkmax(idx[k],i);
		}
	}
	rep(i,1,n) if(valid[1][i] && idx[i]) cons(idx[i],i);
	rep(i,1,n) printf("%d",output[i]);
	printf("\n");
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 3ms
memory: 18276kb

input:

5 3
3 5 2 3 6
2 1 5 2 3

output:

-1
00111

result:

ok all correct

Test #2:

score: 10
Accepted
time: 0ms
memory: 18144kb

input:

200 40
81 50 87 91 54 1 77 68 19 84 28 81 45 64 4 13 25 89 12808135 86 40 73 47 18 82 79 11 96 16 34 80 36 8 5 60 76 86 84 36 37 96 55 68 12807879 51 89 57 30 100 11 44 19 96 32 9 68 41 12808009 5 58 12807939 92 68 67 78 32 57 49 71 92 64 35 89 76 81 36 6 6 53 31 85 79 5 85 1 91 17 37 25 91 54 29 47...

output:

12807909
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111111111111000000000000000000000000000000000000

result:

ok all correct

Test #3:

score: 10
Accepted
time: 0ms
memory: 18284kb

input:

200 41
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

81
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111000000

result:

ok all correct

Test #4:

score: 10
Accepted
time: 2ms
memory: 18268kb

input:

5 2
1 6 1 5 2
4 1 6 2 4

output:

2
10111

result:

ok all correct

Test #5:

score: 10
Accepted
time: 0ms
memory: 18264kb

input:

7 3
5 1 1 1 1 1 5
1 1 1 1 1 1 1

output:

0
0111110

result:

ok all correct

Test #6:

score: 10
Accepted
time: 0ms
memory: 16280kb

input:

200 100
142654162 64490063 513345044 219974445 84112685 711899650 33120992 176027514 802361343 2414916 941549932 786288853 94273368 829024564 352947721 355629698 903479794 326383768 720620114 271371691 786997028 138881060 711795174 536092340 290169962 938690480 710723910 231424065 468554799 44519400...

output:

-2461503019
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111110

result:

ok all correct

Test #7:

score: 10
Accepted
time: 3ms
memory: 18260kb

input:

200 199
392097713 864387769 236976435 989793783 997090826 107508554 219275702 329027733 181833481 896113693 791833669 652173288 689106070 645879177 369017772 739620594 465647432 361649152 704125516 383540722 576805937 293955811 610328615 867720036 757212267 369257718 556736284 696523840 140108544 86...

output:

-105367042470
01111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

result:

ok all correct

Test #8:

score: 10
Accepted
time: 0ms
memory: 18276kb

input:

200 3
746 47 728 416 642 210 910 989 579 230 210 69 492 889 382 557 765 799 530 654 409 580 142 660 984 564 669 995 761 37 626 486 787 448 702 896 828 141 506 819 513 930 633 306 458 592 317 358 1 399964794 122 33 989 530 924 440 783 752 486 723 756 383 521 710 203 880 43 938 619 108 312 627 838 897...

output:

700075000
00000001111011111000000010010100000100001010100000110011000100001010101100000001101101010000000101000110000010000001110000001010000011110010000011100000100100110000100110110000010011000000000000101100

result:

ok all correct

Test #9:

score: 10
Accepted
time: 4ms
memory: 18260kb

input:

200 50
880 306 671 420 987 969 816 443 151 370 474 369 971 785 908 523 671 790 123 453 578 788 484 883 451 352 182 605 216 157 129 401 879 201 308 556 580 479 696 481 20 785 109 138 893 293 779 549 745 93 611 656 380 571 634 483 565 882 375 941 632 813 224 65 446 920 825 720 497 861 267 128 449 332 ...

output:

778903
11111111111111111111111111111111111111110101101010000011110110110011101111111011111001111111111101111111111110111111101111100000111111100000111111111011111111111101111111110110111101111111111101111100

result:

ok all correct

Test #10:

score: 10
Accepted
time: 3ms
memory: 18220kb

input:

200 88
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

114
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

result:

ok all correct

Test #11:

score: 10
Accepted
time: 0ms
memory: 18324kb

input:

200 66
38 28 65 41 3 16 72 66 3 23 24 68 2 11 80 18 66 24 10 25 73 86 84 40 67 21 30 90 2 9 21 3 19 59 43 90 82 35 26 38 60 27 63 41 56 44 30 95 77 15 87 49 90 80 43 3 27 55 64 26 14 84 99 53 18 28 2 92 12 58 28 56 66 83 21 2 14 91 88 60 61 67 18 92 42 39 52 5 17 74 9 61 25 39 29 36 72 30 57 48 67 9...

output:

676940628
11111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111000000000000000000000000000000000000000000000000000000000000000000010

result:

ok all correct

Subtask #2:

score: 10
Accepted

Dependency #1:

100%
Accepted

Test #12:

score: 10
Accepted
time: 2ms
memory: 16236kb

input:

5 3
3 5 2 3 6
2 1 5 2 3

output:

-1
00111

result:

ok all correct

Test #13:

score: 10
Accepted
time: 0ms
memory: 18256kb

input:

200 40
81 50 87 91 54 1 77 68 19 84 28 81 45 64 4 13 25 89 12808135 86 40 73 47 18 82 79 11 96 16 34 80 36 8 5 60 76 86 84 36 37 96 55 68 12807879 51 89 57 30 100 11 44 19 96 32 9 68 41 12808009 5 58 12807939 92 68 67 78 32 57 49 71 92 64 35 89 76 81 36 6 6 53 31 85 79 5 85 1 91 17 37 25 91 54 29 47...

output:

12807909
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001111111111111111111111111111111111111111000000000000000000000000000000000000

result:

ok all correct

Test #14:

score: 10
Accepted
time: 0ms
memory: 18188kb

input:

200 41
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

81
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111000000

result:

ok all correct

Test #15:

score: 10
Accepted
time: 50ms
memory: 16580kb

input:

6000 5999
438826959 520928239 904033734 666301250 559942226 360928183 64116981 707910123 172582807 906896526 260719797 854677975 121544450 575670562 394652708 155768149 22161417 359291091 499618825 502667952 59650494 257306042 963408276 303083778 352667915 75773679 278285664 105026391 349323928 2277...

output:

-2974920497008
011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok all correct

Test #16:

score: 10
Accepted
time: 62ms
memory: 18460kb

input:

6000 3
755 139 542 981 834 378 403 50 957 642 422 97 404 162 96 740 382 555 165 341 975 495 798 239 400 995 990 658 164 147 322 347 326 992 571 206 738 409 984 474 92 827 491 900 714 702 236 938 524 980 661 142 161 150 960 110 248 44 856 823 312 191 26 474 761 862 602 329 729 230 994 370 959 693 648...

output:

700075000
00100000110000010011000101010010110010000010110111010010000000001010101111000100001100100010001010000000000000101000001000001001111001111001110101011001010100001100101000010110011001100100000001000011000000010011010110010001001000000001111010101110010101111110000010000000000111011000101011...

result:

ok all correct

Test #17:

score: 10
Accepted
time: 268ms
memory: 18480kb

input:

6000 1000
741 138 363 210 35 245 159 911 800 560 73 301 493 449 238 954 902 597 370 544 602 407 189 738 289 997 735 141 951 373 871 890 156 903 436 831 312 759 825 132 903 675 528 818 174 110 848 680 774 600 514 287 220 68 540 227 358 880 23 508 308 240 379 647 72 951 458 948 335 134 131 107 327 690...

output:

24611157
011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok all correct

Test #18:

score: 10
Accepted
time: 247ms
memory: 16416kb

input:

6000 100
336 306 465 857 915 140 929 46 210 912 792 718 320 735 261 263 470 571 291 582 344 201 84 145 181 118 322 298 213 633 26 784 247 34 704 403 491 717 409 591 793 180 190 40 172 819 298 308 22 443 153 85 823 863 444 272 882 953 495 204 173 896 790 228 474 508 772 628 801 802 734 650 335 307 82...

output:

4154886
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok all correct

Test #19:

score: 10
Accepted
time: 241ms
memory: 16420kb

input:

6000 2574
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

output:

3428
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok all correct

Test #20:

score: 10
Accepted
time: 25ms
memory: 16380kb

input:

6000 2
4 907464143 5 819 1 718 1 835 1 868 4 805 1 909 2 794 3 881 3 737 2 836 5 897 3 948 3 962 4 966 4 760 1 711 3 769 1 735 2 755 1 970 4 995 3 804 2 736 1 829 1 792 4 780 5 755 2 736 5 899 4 948 2 824 4 878 3 908 3 799 1 783 2 762 5 756 3 711 2 819 4 808 3 871 5 891 3 898 5 862 1 822 2 829 3 746...

output:

181
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok all correct

Test #21:

score: 10
Accepted
time: 71ms
memory: 18476kb

input:

6000 3000
922052946 280904938 445918355 967683647 277202791 981735071 732175606 219768397 796109205 465645246 966784498 355162401 336770904 400156650 619935812 447153504 304935758 623511852 508900817 502590598 838660835 931490468 533176270 718616615 820952844 886312677 750600298 980271025 911406540 ...

output:

3600871
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok all correct

Test #22:

score: 10
Accepted
time: 0ms
memory: 18316kb

input:

5 2
1 6 1 5 2
4 1 6 2 4

output:

2
10111

result:

ok all correct

Test #23:

score: 10
Accepted
time: 3ms
memory: 16232kb

input:

7 3
5 1 1 1 1 1 5
1 1 1 1 1 1 1

output:

0
0111110

result:

ok all correct

Test #24:

score: 10
Accepted
time: 0ms
memory: 16240kb

input:

200 100
142654162 64490063 513345044 219974445 84112685 711899650 33120992 176027514 802361343 2414916 941549932 786288853 94273368 829024564 352947721 355629698 903479794 326383768 720620114 271371691 786997028 138881060 711795174 536092340 290169962 938690480 710723910 231424065 468554799 44519400...

output:

-2461503019
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111110

result:

ok all correct

Test #25:

score: 10
Accepted
time: 0ms
memory: 18144kb

input:

200 199
392097713 864387769 236976435 989793783 997090826 107508554 219275702 329027733 181833481 896113693 791833669 652173288 689106070 645879177 369017772 739620594 465647432 361649152 704125516 383540722 576805937 293955811 610328615 867720036 757212267 369257718 556736284 696523840 140108544 86...

output:

-105367042470
01111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

result:

ok all correct

Test #26:

score: 10
Accepted
time: 0ms
memory: 16152kb

input:

200 3
746 47 728 416 642 210 910 989 579 230 210 69 492 889 382 557 765 799 530 654 409 580 142 660 984 564 669 995 761 37 626 486 787 448 702 896 828 141 506 819 513 930 633 306 458 592 317 358 1 399964794 122 33 989 530 924 440 783 752 486 723 756 383 521 710 203 880 43 938 619 108 312 627 838 897...

output:

700075000
00000001111011111000000010010100000100001010100000110011000100001010101100000001101101010000000101000110000010000001110000001010000011110010000011100000100100110000100110110000010011000000000000101100

result:

ok all correct

Test #27:

score: 10
Accepted
time: 2ms
memory: 18192kb

input:

200 50
880 306 671 420 987 969 816 443 151 370 474 369 971 785 908 523 671 790 123 453 578 788 484 883 451 352 182 605 216 157 129 401 879 201 308 556 580 479 696 481 20 785 109 138 893 293 779 549 745 93 611 656 380 571 634 483 565 882 375 941 632 813 224 65 446 920 825 720 497 861 267 128 449 332 ...

output:

778903
11111111111111111111111111111111111111110101101010000011110110110011101111111011111001111111111101111111111110111111101111100000111111100000111111111011111111111101111111110110111101111111111101111100

result:

ok all correct

Test #28:

score: 10
Accepted
time: 0ms
memory: 18268kb

input:

200 88
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

114
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

result:

ok all correct

Test #29:

score: 10
Accepted
time: 3ms
memory: 18196kb

input:

200 66
38 28 65 41 3 16 72 66 3 23 24 68 2 11 80 18 66 24 10 25 73 86 84 40 67 21 30 90 2 9 21 3 19 59 43 90 82 35 26 38 60 27 63 41 56 44 30 95 77 15 87 49 90 80 43 3 27 55 64 26 14 84 99 53 18 28 2 92 12 58 28 56 66 83 21 2 14 91 88 60 61 67 18 92 42 39 52 5 17 74 9 61 25 39 29 36 72 30 57 48 67 9...

output:

676940628
11111111111111111111111111011111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110111111000000000000000000000000000000000000000000000000000000000000000000010

result:

ok all correct

Subtask #3:

score: 0
Time Limit Exceeded

Test #30:

score: 10
Accepted
time: 3ms
memory: 18132kb

input:

5 2
1 6 1 5 2
4 1 6 2 4

output:

2
10111

result:

ok all correct

Test #31:

score: 10
Accepted
time: 1697ms
memory: 25416kb

input:

250000 2
18 35 29 35 18 610084694 18 35 29 35 18 448867144 18 35 29 35 18 971272498 18 35 29 35 18 890430190 18 35 29 35 18 655685684 18 35 29 35 18 234608237 18 35 29 35 18 894586749 18 35 29 35 18 442195168 18 35 29 35 18 341564617 18 35 29 35 18 985069087 18 35 29 35 18 967546483 18 35 29 35 18 5...

output:

33391
101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010...

result:

ok all correct

Test #32:

score: 10
Accepted
time: 1028ms
memory: 25416kb

input:

250000 2
5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1 5 1...

output:

7
0101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101...

result:

ok all correct

Test #33:

score: 10
Accepted
time: 1814ms
memory: 25420kb

input:

250000 2
296095839 339724373 965973329 196477261 344160630 150756369 190174474 470255817 512937857 249988555 752486830 474766981 101796731 563280029 312834955 720810905 619379033 324109033 874523062 841728664 19232878 363302361 436792441 201047597 165902785 728305993 892140052 423772401 255303346 35...

output:

-3196894
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok all correct

Test #34:

score: 10
Accepted
time: 2249ms
memory: 28340kb

input:

250000 2
376 997 143 229 156 268 727 677 546 358 90 640 60 769 719 690 109 34 216 522 884 609 280 765 605 31 666 831 484 182 600 682 689 103 409 421 455 587 971 442 575 402 788 246 270 255 158 582 281 259 935 578 210 439 432 480 86 273 323 929 326 699 379 298 880 163 169 125 773 857 654 902 177 163 ...

output:

127670228
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok all correct

Test #35:

score: 0
Time Limit Exceeded

input:

250000 2
453 396 898 114 712 889 968 486 308 612 455 958 517 330 506 470 161 423 120 110 588 176 325 304 383 578 934 976 119 779 286 184 984 575 621 99 277 113 43 681 404 397 390 94 939 405 958 170 542 935 610 747 164 245 292 315 438 477 45 62 998 706 231 474 556 181 27 385 442 613 295 283 985 82 12...

output:


result:


Subtask #4:

score: 0
Skipped

Dependency #3:

0%

Subtask #5:

score: 0
Skipped

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

0%