提出 #71010732


ソースコード 拡げる

/*
*            /$$           /$$
*           |__/          |__/
*  /$$$$$$$$ /$$ /$$$$$$$$ /$$  /$$$$$$
* |____ /$$/| $$|____ /$$/| $$ /$$__  $$
*    /$$$$/ | $$   /$$$$/ | $$| $$  \ $$
*   /$$__/  | $$  /$$__/  | $$| $$  | $$
*  /$$$$$$$$| $$ /$$$$$$$$| $$|  $$$$$$$
* |________/|__/|________/|__/ \____  $$
*                                   | $$
*                                   | $$
*                                   |__/
*/
//hj23308±£ÓÓÎÒ
//Missile±£ÓÓÎÒ
/*
* ÐÑÁËÔÚÃÎÀïÕõÔú£¬²»¾õ÷öµ­Á˳¯Ï¼
*/
/*
* ÎҺܸßÐËÄãûÓÐÍüÁËÎÒ£¬µ«ÊÇÎÒÏÖÔÚ¸üÏ£ÍûÄãÒѾ­ÍüÁËÎÒÁË¡£
* Ï£ÍûÔÚÄãµÄ¼ÇÒäÖУ¬ÎÒÖ»Êdz¾ÍÁÒ»´é£¬´ÓÄãµÄÈ«ÊÀ½ç·¹ý£¬È»ºóËÄÉ¢·ÉÑï²»ÁôÏÂÒ»µãºÛ¼££¬¶øÄãÒª²»»ØÍ·µÄÍùǰ×ß¡£
* ÎÒ¸üÏ£ÍûÎÒÖ»ÊÇ´ÓÄãµÄÈ«ÊÀ½ç·¹ý£¬Ö»ÊÇ·¹ý
*/
/*
* Ö»ÊÇÎÒÔÚÊ®×Ö·¿ÚÊØÁËÌ«¾Ã£¬Êص½»ÆÉ³ÈçÓêÑÚÂñÒ»Çкۼ££¬²Å·¢ÏÖ×Ô¼ºµÈµÄÈËÒѾ­À뿪ÁË¡£
*/
/*
* ÌýÎÒµÄ ±ð»ØÍ· »ØÍ·¾Í¿ÉÄÜ»áÀáÁ÷ÂúÃæ£¬»á±»»ÆÉ³ÑÚÂñ£¬ËùÒÔ¼´Ê¹Í´¿àÒ²ÒªÏòǰ×ß
*/
/*
* ÎÒÌýµ½ÁË¡¸ÌìÐн¡¡¹µÄ»ØÏ죬ÕâÊÇÒ»¸öΰ´ó¶·Ê¿µÄ²»Ï¢×ÔÇ¿£»
* ÎÒÌýµ½ÁË¡¸ÆÆÍò·¨¡¹µÄ»ØÏ죬ÕâÊÇÒ»¸öºÚµÀ´òÊÖµÄÊØ»¤ÓûÍû£»
* ÎÒ¿´¼ûÁË¡¸ÉúÉú²»Ï¢¡¹µÄ¼¤µ´£¬ÕâÊÇÒ»¸öÆ­×ÓµÄΰ´óÀÖÕ£¡
*/
/*
* ÎÒÓÃÐé¼ÙµÄÃæ¾ßÕÕ¹Ë×ÅϸÄåµÄ¸ÐÇ飻
* ÎÒÒÔ»ªÀöµÄÒÂÎïϲØ×Ÿ¯ÀõÄѪÈ⣻
* µ±ÎÒÕªÏÂÃæ¾ß£¬ÍÊÈ¥ÒÂÎ¼´±ãÊÇÎÒ×îÇ×½üµÄÈË£¬Ò²ÎÞ·¨Ö±ÊÓÎÒ
*/
#include<bits/stdc++.h>
#define mk make_pair
using namespace std;
mt19937 engine(chrono::steady_clock().now().time_since_epoch().count());
const int MAXN=2e5+5;
int n,m,q;
long long ans;
int a[MAXN],b[MAXN];
multiset<int>A,B,C;
void init()
{
	while(int(A.size())<(n/2)) {
		ans+=(*B.begin());
		A.emplace(*B.begin());
		B.erase(B.begin());
	}
	while(int(C.size())<(n/2)) {
		ans+=(*B.rbegin());
		C.emplace(*B.rbegin());
		B.erase(prev(B.end()));
	}
	while(*A.rbegin()>(*B.begin())) {
		int x=*A.rbegin(),y=*B.begin();
		ans-=x,ans+=y;
		A.erase(A.find(x)),B.erase(B.find(y));
		A.emplace(y),B.emplace(x);
	}
	while(*C.begin()<(*B.rbegin())) {
		int x=*C.begin(),y=*B.rbegin();
		ans-=x,ans+=y;
		C.erase(C.find(x)),B.erase(B.find(y));
		C.emplace(y),B.emplace(x);
	}
}
void Modify(int x,int y)
{
	if(A.find(x)!=A.end()) ans-=x,A.erase(A.find(x));
	else if(B.find(x)!=B.end()) B.erase(B.find(x));
	else if(C.find(x)!=C.end()) ans-=x,C.erase(C.find(x));
	B.emplace(y);
	init();
}
int main()
{
//	freopen(".in","r",stdin);
//	freopen(".out","w",stdout);
	std::ios::sync_with_stdio(false);
	cin.tie(0),cout.tie(0);
	cin>>n>>m>>q;
	for(int i=1;i<=n;i++) {
		cin>>a[i];
		B.emplace(a[i]);
	}
	for(int i=1;i<=m;i++) {
		cin>>b[i];
		B.emplace(b[i]);
	}
	init();
	while(q--) {
		int opt,pos,val;
		cin>>opt>>pos>>val;
		if(opt==1) {
			Modify(a[pos],val);
			a[pos]=val;
		}
		else {
			Modify(b[pos],val);
			b[pos]=val;
		}
		cout<<ans<<"\n";
	}
	return 0;
}

提出情報

提出日時
問題 B - Remove Median Operations
ユーザ Ziziq
言語 C++23 (GCC 15.2.0)
得点 600
コード長 3432 Byte
結果 AC
実行時間 526 ms
メモリ 24196 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 600 / 600
結果
AC × 2
AC × 63
セット名 テストケース
Sample 01_sample_01.txt, 01_sample_02.txt
All 01_sample_01.txt, 01_sample_02.txt, 02_rand1_01.txt, 02_rand1_02.txt, 02_rand1_03.txt, 02_rand1_04.txt, 02_rand1_05.txt, 02_rand1_06.txt, 02_rand1_07.txt, 02_rand1_08.txt, 02_rand1_09.txt, 02_rand1_10.txt, 02_rand1_11.txt, 02_rand1_12.txt, 02_rand1_13.txt, 02_rand1_14.txt, 02_rand1_15.txt, 02_rand1_16.txt, 02_rand1_17.txt, 02_rand1_18.txt, 02_rand1_19.txt, 02_rand1_20.txt, 02_rand1_21.txt, 03_rand2_01.txt, 03_rand2_02.txt, 03_rand2_03.txt, 03_rand2_04.txt, 03_rand2_05.txt, 03_rand2_06.txt, 03_rand2_07.txt, 03_rand2_08.txt, 03_rand2_09.txt, 03_rand2_10.txt, 03_rand2_11.txt, 03_rand2_12.txt, 03_rand2_13.txt, 03_rand2_14.txt, 03_rand2_15.txt, 03_rand2_16.txt, 04_query_small_01.txt, 04_query_small_02.txt, 04_query_small_03.txt, 04_query_small_04.txt, 04_query_small_05.txt, 04_query_small_06.txt, 04_query_small_07.txt, 04_query_small_08.txt, 04_query_small_09.txt, 04_query_small_10.txt, 04_query_small_11.txt, 04_query_small_12.txt, 05_query_large_01.txt, 05_query_large_02.txt, 05_query_large_03.txt, 05_query_large_04.txt, 05_query_large_05.txt, 05_query_large_06.txt, 05_query_large_07.txt, 05_query_large_08.txt, 05_query_large_09.txt, 05_query_large_10.txt, 05_query_large_11.txt, 05_query_large_12.txt
ケース名 結果 実行時間 メモリ
01_sample_01.txt AC 1 ms 3544 KiB
01_sample_02.txt AC 1 ms 3488 KiB
02_rand1_01.txt AC 49 ms 3624 KiB
02_rand1_02.txt AC 50 ms 3632 KiB
02_rand1_03.txt AC 54 ms 3616 KiB
02_rand1_04.txt AC 77 ms 3676 KiB
02_rand1_05.txt AC 79 ms 3672 KiB
02_rand1_06.txt AC 231 ms 13764 KiB
02_rand1_07.txt AC 233 ms 13864 KiB
02_rand1_08.txt AC 233 ms 13804 KiB
02_rand1_09.txt AC 241 ms 13780 KiB
02_rand1_10.txt AC 261 ms 13764 KiB
02_rand1_11.txt AC 399 ms 18900 KiB
02_rand1_12.txt AC 410 ms 19780 KiB
02_rand1_13.txt AC 272 ms 11092 KiB
02_rand1_14.txt AC 272 ms 10280 KiB
02_rand1_15.txt AC 312 ms 13524 KiB
02_rand1_16.txt AC 222 ms 9028 KiB
02_rand1_17.txt AC 523 ms 24128 KiB
02_rand1_18.txt AC 507 ms 23888 KiB
02_rand1_19.txt AC 522 ms 23944 KiB
02_rand1_20.txt AC 519 ms 23996 KiB
02_rand1_21.txt AC 503 ms 23948 KiB
03_rand2_01.txt AC 137 ms 13864 KiB
03_rand2_02.txt AC 136 ms 13736 KiB
03_rand2_03.txt AC 133 ms 13764 KiB
03_rand2_04.txt AC 138 ms 13784 KiB
03_rand2_05.txt AC 140 ms 13728 KiB
03_rand2_06.txt AC 210 ms 18848 KiB
03_rand2_07.txt AC 134 ms 6380 KiB
03_rand2_08.txt AC 156 ms 11312 KiB
03_rand2_09.txt AC 158 ms 9372 KiB
03_rand2_10.txt AC 223 ms 14020 KiB
03_rand2_11.txt AC 136 ms 5444 KiB
03_rand2_12.txt AC 274 ms 23976 KiB
03_rand2_13.txt AC 273 ms 23984 KiB
03_rand2_14.txt AC 287 ms 24196 KiB
03_rand2_15.txt AC 276 ms 23936 KiB
03_rand2_16.txt AC 275 ms 23900 KiB
04_query_small_01.txt AC 208 ms 13764 KiB
04_query_small_02.txt AC 209 ms 13864 KiB
04_query_small_03.txt AC 217 ms 13728 KiB
04_query_small_04.txt AC 217 ms 13780 KiB
04_query_small_05.txt AC 224 ms 13744 KiB
04_query_small_06.txt AC 387 ms 18904 KiB
04_query_small_07.txt AC 310 ms 13552 KiB
04_query_small_08.txt AC 326 ms 15260 KiB
04_query_small_09.txt AC 243 ms 13608 KiB
04_query_small_10.txt AC 344 ms 15196 KiB
04_query_small_11.txt AC 263 ms 12448 KiB
04_query_small_12.txt AC 526 ms 23888 KiB
05_query_large_01.txt AC 218 ms 13764 KiB
05_query_large_02.txt AC 224 ms 13744 KiB
05_query_large_03.txt AC 223 ms 13856 KiB
05_query_large_04.txt AC 224 ms 13772 KiB
05_query_large_05.txt AC 229 ms 13788 KiB
05_query_large_06.txt AC 393 ms 18884 KiB
05_query_large_07.txt AC 241 ms 10580 KiB
05_query_large_08.txt AC 235 ms 10408 KiB
05_query_large_09.txt AC 255 ms 11048 KiB
05_query_large_10.txt AC 358 ms 16816 KiB
05_query_large_11.txt AC 296 ms 15568 KiB
05_query_large_12.txt AC 482 ms 23992 KiB