首页 > 其他分享 >SMU Autumn 2024 Trial 1

SMU Autumn 2024 Trial 1

时间:2024-09-12 14:26:55浏览次数:1  
标签:2024 ve int SMU mid long Autumn solve sum

A. Load Balancing
很明显题意要的就是让我们把每个数往平均值靠,这样就保证最大值-最小值最小
但是当sum%n !=0的时候就说明无法每个数都等于sum/n,所以处理的方法就是,先计算这些无法等于sum/n的个数cnt,再算出可以到达sum/n的次数n-cnt,然后算出总代价,再用总代价除以2就是答案,因为一个数的增值是由另一个数的减值来的。

#include <bits/stdc++.h>
using namespace std;
#define int long long



void solve()
{
	int n,sum=0,minn=1e10,maxx=-1;
	cin>>n;
	vector<int>ve(n);
	for(int i=0;i<n;i++){
		cin>>ve[i];
		sum+=ve[i];
		maxx=max(maxx,ve[i]);
		minn=min(minn,ve[i]);
	}
	if(maxx-minn<=1) {
		cout<<0<<endl;
		return;
	}
	sort(ve.rbegin(),ve.rend());//按降序排序
	
	int cnt=sum%n,k=sum/n;
	//k为向下取整后的均值
	//大的向k+1靠,小的向k靠,这样保证总代价最小
	int ans=0;
	for(int i=0;i<n;i++)
	{
		if(cnt)
		{
			cnt--;
			ans+=abs(ve[i]-k-1);
		}else{
			ans+=abs(ve[i]-k);
		}
	}
	cout<<ans/2;
	
}

signed main()
{
	int t=1;
	//cin>>t;
	while(t--) solve();
	
}

B. Longest Simple Cycle

一道比较好理解的dp

#include <bits/stdc++.h>
using namespace std;
#define int long long


void solve()
{
	 int n;
	cin>>n;
	int f[n+1]={0};
	vector<int>a(n+1),b(n+1),c(n+1);
	//c存链的顶点数,b,c为连接位置
	for(int i=1;i<=n;i++) cin>>c[i];
	for(int i=1;i<=n;i++) cin>>a[i];
	for(int i=1;i<=n;i++) cin>>b[i];
	
	for(int i=2;i<=n;i++)
	{
		if(a[i]==b[i]) f[i]=c[i]+1;
		else{
			f[i]=max(c[i]+1+f[i-1]-abs(a[i]-b[i]),c[i]+1+abs(a[i]-b[i]));
		}
	}
	cout<<*max_element(f+1,f+n+1)<<endl;
	
	
}


signed main() {
	int t;
	cin >> t;
	while (t--) {
		solve();
	}
}

C. Match Points
二分答案,枚举可以匹配的点对数,但是check里的验证,是这样的,比如 5 7 8 9 10,我枚举的mid=2,那么我要验证的是(5,9)和(7,10)这样才能确保得到的点对数最大

#include <bits/stdc++.h>
using namespace std;
#define int long long
vector<int>ve;
	int n,z;
bool check(int mid)
{
	for(int i=1;i<=mid;i++) if(ve[n-mid+i]-ve[i]<z) return 0;
	return 1;
}


void solve()
{

	cin>>n>>z;	
	ve.resize(n+1);
	for(int i=1;i<=n;i++) 	cin>>ve[i];
	sort(ve.begin()+1,ve.end());
	
	int l=0,r=n>>1,mid=0;//边界r不可以开太大了
	int ans=0;
	
	while(l<=r)
	{
		 mid=(l+r)>>1;
		if(check(mid)) l=mid+1,ans=mid;
		else r=mid-1;
	}
	cout<<ans;
}

signed main()
{
	int t=1;
	//cin>>t;
	while(t--) solve();
	
}

D. Vus the Cossack and a Contest
水题

#include <bits/stdc++.h>
using namespace std;
#define int long long



void solve()
{
	int n,m,k;
	cin>>n>>m>>k;
	if(n<=min(m,k)){
		cout<<"Yes";
	}
	else cout<<"No";

}

signed main()
{
	int t=1;
	//cin>>t;
	while(t--) solve();
	
}

标签:2024,ve,int,SMU,mid,long,Autumn,solve,sum
From: https://www.cnblogs.com/swjswjswj/p/18410111

相关文章

  • 2024年市场营销人员需要了解的16个Snapchat用户数据
    Snapchat年龄分布Snapchat性别分布Snapchat收入分布Snapchat地理位置分布我们都知道每个Snapchat用户都是独特且珍贵的,但让一个普通的社交媒体经理了解应用程序的8亿月度活跃用户的全部情况实在是太难了。这时,Snapchat的人口统计数据就派上用场了。这些方便的数据让我......
  • 2024年金九银十最新版Java面试题及答案整理(持续更新)
    2024年金九银十到了,发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全~这套互联网Java工程师面试题包括了:MyBatis、ZK、Dubbo、EL、Redis、MySQL、并发编程、Java面试、Spring、微服务、Linux、Springboot、SpringCloud、MQ、Kafka面试专......
  • TPAMI 2024 | 点云分割领域自适应的组合语义混合
    CompositionalSemanticMixforDomainAdaptationinPointCloudSegmentation点云分割领域自适应的组合语义混合CristianoSaltori,FabioGalasso,GiuseppeFiameni,NicuSebe,FabioPoiesi,ElisaRicci代码:https://github.com/saltoricristiano/cosmix-uda摘......
  • 2024年8月国产数据库大事记-墨天轮
    本文为墨天轮社区整理的2024年8月国产数据库大事件和重要产品发布消息。目录2024年8月国产数据库大事记TOP102024年8月国产数据库大事记(时间线)产品/版本发布兼容认证代表厂商大事记厂商活动【VLDB2024分享和相关论文】其它活动相关资料厂商财报其它2024年......
  • SPiT:超像素驱动的非规则ViT标记化,实现更真实的图像理解 | ECCV 2024
    VisionTransformer(ViT)架构传统上采用基于网格的方法进行标记化,而不考虑图像的语义内容。论文提出了一种模块化的超像素非规则标记化策略,该策略将标记化和特征提取解耦,与当前将两者视为不可分割整体的方法形成了对比。通过使用在线内容感知标记化以及尺度和形状不变的位置嵌入......
  • 2024年9月最新Stable Diffusion下载+安装+使用教程(超详细教学)
    前言注意:本文讲解的用的是用“整合包”来本地部署安装及使用StableDiffusionWebUI,你不需要懂太多的计算机知识,而且用整合包对新手也是比较友好的,磁盘需要预留100G~200G空间才能玩。整合包我会放在文末前言本文将基于最新的SD整合包,结合笔者整合的资源,为大家介绍最......
  • Oracle 19c OCP 认证考试 082 题库(第20题)- 2024年修正版
    【优技教育】Oracle19cOCP082题库(Q20题)-2024年修正版考试科目:1Z0-082考试题量:90通过分数:60%考试时间:150min本文为(CUUG原创)整理并解析,转发请注明出处,禁止抄袭及未经注明出处的转载。原文地址:http://www.cuug.com/index.php?s=/home/article/detail/id/3401.html第......
  • IOI2024
    可能有点胡言乱语。本人较菜,部分题目借鉴tiger2005的题解。D1T1Nile观察到\(B_i<A_i\),那么我们可以转化我们要解决的问题:记\(val_i=A_i-B_i\)。如果我们让\(i\)货物和\(j\)货物运到一起,我们会有\(val_i+val_j\)的收益。由于\(val_i>0\),所以选择尽可能多的货物同时......
  • 2024年9月数据治理/项目管理/产品管理等优质内训
    在瞬息万变、竞争激烈的市场里,企业为求繁盛,宜内外寻觅资深导师,开展学习与培训。简而言之,内训是企业成长的必经之路。 数据治理 数据管理基础数据处理伦理数据治理数据架构数据建模和设计数据安全数据集成和互操作文件和内容管理参考数据和主数据数据仓库和商务智能元数据管理数据......
  • 2024年9月上海、成都、深圳CDAM数据资产管理师认证招生
    人工智能与信息浪潮中,数据资源作为企业发展的核心要素,其可重组利用的无形价值显著。数据安全、利用、价值评估等工作,均关乎企业未来决策与发展。数据资产,是企业持续发展的关键因素。 在此背景下,CDAM数据资产管理师应运而生,他们在组织中担当数据资产的规划师、治理者、质控者、安全......