题解 | #小橙的圈圈#

小橙的圈圈

https://ac.nowcoder.com/acm/contest/84244/F

F.小橙的圈圈

题解

注意到竞赛图上的三元组 共有如下两类状态:

alt

其中的第一类(即三元环)很难枚举,因此考虑枚举第二类三元组。

具体地,我们统计朝每个点 连边的点的总数 ,则在这些点中任取一对 ,都能唯一地确定一个第二类三元组

因此第二类三元组的总数为 。答案即为三元组总数 减去第二类三元组的总数。

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

int i,j,k,n,m,t;
ll sd,res,in[5005];

int main(){
	cin>>n>>sd;
	res=1ll*n*(n-1)*(n-2)/6;
	for(i=1;i<=n;i++)for(j=i+1;j<=n;j++){
		if(sd&1)in[i]++;
		else in[j]++;
		sd=(sd*7+13)%1000000007;
	}
	for(i=1;i<=n;i++){
		res-=(in[i]-1)*in[i]/2;
	}
	cout<<res;
}
全部评论
佬,tql 学算法有什么经验吗,天赋太差orz
点赞 回复 分享
发布于 2024-06-02 22:47 云南
点赞 回复 分享
发布于 2024-06-02 22:23 江苏

相关推荐

05-12 17:28
已编辑
门头沟学院 硬件开发
ldf李鑫:不说公司名祝你以后天天遇到这样的公司
点赞 评论 收藏
分享
Southyeung:我说一下我的看法(有冒犯实属抱歉):(1)简历不太美观,给我一种看都不想看的感觉,感觉字体还是排版问题;(2)numpy就一个基础包,机器学习算法是什么鬼?我感觉你把svm那些写上去都要好一点。(2)课程不要写,没人看,换成获奖经历;(3)项目太少了,至少2-3个,是在不行把网上学习的也写上去。
点赞 评论 收藏
分享
评论
23
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务