abc282E - Choose Two and Eat One(转化成生成树)

E - Choose Two and Eat One
非常巧妙的一集

可以将整个局面看作一张图,选两个数获得的score就是它们的边权,然后做最大生成树,不难发现操作和建树之间是一一对应的。

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<queue>
#include<map>
#define A puts("YES")
#define B puts("NO")
#define fo(i,a,b) for (int (i)=(a);(i)<=(b);(i)++)
#define fd(i,b,a) for (int (i)=(b);(i)>=(a);(i)--)
#define mk(x,y) make_pair((x),(y))
using namespace std;
typedef double db;
typedef long long ll;
const int N=500+5;
const ll inf=1ll<<60;
struct node{
	ll x,y,v;
};
node v[N*N];

ll f[N],a[N],n,m,tot,f1,f2;
ll find(ll x){
	if (x==f[x]) return x;
	return f[x]=find(f[x]);
}
ll power(ll a,ll b){
	ll t=1,y=a;
	while (b){
		if (b&1) t=t*y%m;
		y=y*y%m;
		b/=2;
	}
	return t;
}
bool cmp(node a,node b){
	return a.v>b.v;
}
int main()
{ 
//	freopen("data.in","r",stdin);
	
	scanf("%lld %lld",&n,&m);
	fo(i,1,n) scanf("%lld",&a[i]);
	
	fo(i,1,n) {
		fo(j,i+1,n) {
			v[++tot]=(node){i,j, (power(a[i],a[j])+power(a[j],a[i]))%m };
		}
	}
	
	sort(v+1,v+tot+1,cmp);
	
	fo(i,1,n) f[i]=i;
	
	ll ans=0;
	fo(i,1,tot) {
		f1=find(v[i].x);
		f2=find(v[i].y);
		if (f1^f2) {
			ans+=v[i].v;
			f[f1]=f2;
		}
	}
	
	printf("%lld",ans);
	return 0;
}
posted @   gan_coder  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
  1. 1 青春コンプレックス 結束バンド
  2. 2 ギターと孤独と蒼い惑星 結束バンド
  3. 3 星座になれたら 結束バンド
  4. 4 恋のうた (feat. 由崎司) 鬼頭明里
  5. 5 月と星空 カノエラナ
  6. 6 Cagayake!GIRLS[5人Ver.] (TV size Ver.) 桜高軽音部
  7. 7 不可思議のカルテ 不可思議のカルテ
  8. 8 優しさの理由 ChouCho
不可思議のカルテ - 不可思議のカルテ
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 児玉雨子

作曲 : カワイ ヒデヒロ

编曲 : カワイ ヒデヒロ

编曲:カワイヒデヒロ(fox capture plan)

語れない眠れないトロイメライ

語れない眠れないトロイメライ

語れない眠れないトロイメライ

如鲠在喉 夜不能寐 如梦如幻

あなたの見てる正体

你所看到的真实

誰も読めないカルテ

这谁都读不懂的病历啊

不可思議知りたいだけ

真是不可思议啊 只是想要去了解罢了

嘘も現実も

嘘も現実も

嘘も現実も

谎言也好 现实也罢

どっちも真実だったの本当よ

都是难以置信的真实

今日もひとりごと

今天也是一个人

なんにも無理をしないで

做什么都勉强着自己

わたし愛されたい

我想要被爱啊!

有耶無耶さよなら軽い眩暈

有耶無耶さよなら軽い眩暈

有耶無耶さよなら軽い眩暈

棱模两可 转瞬即逝 头晕目眩

あなたのいない現象界

在你不存在的现象界

誰も読めないカルテ

这谁都读不懂的病历啊

自意識溢れ出して

果然是自我意识过剩么

鼓動世界像

鼓動世界像

鼓動世界像

心动不已 这世界之形

いつも噛み合わないの痛くて

总是咬着不放

毎夜ねがいごと

每晚总是因抓不住而痛苦万分

なんにも疑わないで

什么都不想怀疑了

混ざり融(と)け合いたい

感情相互混杂着

たわいない判らない理由存在

たわいない判らない理由存在

たわいない判らない理由存在

毫不可怖 未曾知晓 理由? 存在?

あなたと残す後悔

与你一起残存的后悔之情

誰も読めないカルテ

这谁都读不懂的病历啊

不愉快繰り返して

回过头看 真是令人不愉快呢

正しい夢は

正しい夢は

正しい夢は

那正确的梦想是什么?

かなしい声は

这悲戚的声响又是为了什么?

美しい?

是觉得绚丽么?

疑わしい?

还是疑惑?

羨ましい?

又或是感到羡慕?

ねえ、どれ?

呐,究竟是怎样呢

語れない眠れないトロイメライ

語れない眠れないトロイメライ

語れない眠れないトロイメライ

如鲠在喉 夜不能寐 如梦如幻

あなたの見てる正体

你所看到的真实

誰も読めないカルテ

这谁都读不懂的病历啊

不可思議知りたいだけ

真是不可思议 只是想要去知晓

終わらないことはないトロイメライ

終わらないことはないトロイメライ

終わらないことはないトロイメライ

残灯末庙 更仆未罄 如梦如幻

あなたと跨ぐ境界

与你一起跨越世界

誰も読めないカルテ

这谁都读不懂的病历啊

思春期疵口(きずぐち)胸のうち

思春期在胸口的伤痕

不可思議知りたいだけ真是不可思议啊 只是想要去了解罢了

点击右上角即可分享
微信分享提示