首页 > 其他分享 >CF1506C Epic Transformation

CF1506C Epic Transformation

时间:2023-11-22 21:46:48浏览次数:38  
标签:10 int CF1506C sum max Epic Transformation

CF1506C Epic Transformation

Epic Transformation - 洛谷

算是今天的题目里边思维难度最高的一道了,但是代码真的简单的要死

题意

你有一个长度为 \(n\) 的序列 \(a\),你可以对其进行下列操作:

  • 选择 \(i,j\) 满足 \(a_i\neq a_j\) 然后删除 \(*a_i,a_j*\) 两个数。

求序列 a 经过若干次操作后最少有几个数,\(*T*\) 组数据。

\(1≤T≤10^4;1≤n,∑n≤2×10^5;1≤a_i≤10^9\)

思路

其实 证明 或 推导 更合适一些

这题,可以构造,当有\(n\)个数时,如果\(n\)为奇数,那么输出最小为\(1\),为偶数时,最小为\(0\)

那,如何构造呢?通过最大的一堆将其余的\(n-1\)堆变得相等即可。

设各数出现次数为数列a,则:

  1. 若\(max\{a\}>\sum ^n_{i=1}a_i-max\{a\}\):则最大的一种数无法被消完时其余各数串已经相等,答案为

\[max\{a\}-(\sum ^n_{i=1}a_i-max\{a\}) \]

  1. 若\(max\{a\}<\sum ^n_{i=1}a_i-max\{a\}\):说明可以消干净,答案因奇偶而定

所以最后答案就是

\[max\{\sum ^n_{i=1}a_i-max\{a\},n\%2\} \]

代码

#include<bits/stdc++.h>
using namespace std;
const int maxx=2e5+10;
int n,a[maxx],maxn,cnt;
int run()
{
	maxn=0,cnt=1;
	cin>>n;
	for(int i=0;i<n;i++) cin>>a[i];
	sort(a,a+n);
	for(int i=0;i<n-1;i++)
	{
		if(a[i]==a[i+1]) cnt++;
		else
		{
			maxn=max(maxn,cnt);
			cnt=1;
		}
	}
	maxn=max(maxn,cnt);
//	cout<<maxn<<endl; 
	cout<<max(maxn-(n-maxn),n%2)<<endl;
	return 0;
}
int main()
{
	int t;
	cin>>t;
	while(t--)
	{
		run();
	}
}

标签:10,int,CF1506C,sum,max,Epic,Transformation
From: https://www.cnblogs.com/lyk2010/p/17850356.html

相关文章

  • 视频直播源码,图片选择器ImagePicker
    视频直播源码,图片选择器ImagePicker引入 gradleallprojects{  repositories{    maven{url'https://jitpack.io'}  }}implementation'com.github.DL-ZhangTeng:ImagePicker:1.5.0'//使用的三方implementation'com.github.bumptech.glide:glide:4.1......
  • Image中的transformation理解【swt.snippet】
    /********************************************************************************Copyright(c)2000,2005IBMCorporationandothers.*Allrightsreserved.Thisprogramandtheaccompanyingmaterials*aremadeavailableunderthetermsoftheEclip......
  • [官方培训]10-UE实时渲染后期 李文磊 Epic 笔记
    实时渲染后期什么是后期需求:快速地基于镜头对最终画面内容及形式(节奏,色调,气氛)的控制传统后期:像素UE后期:像素和对象UE后期UE后期对象:对象和像素(Buffer)对象调节:光影,材质,特效,雾效,Sequencer像素Buffer处理:AA,相机及镜头效果,ColorGrading,Tonemapping,PPM,Decal,Translucency,Compo......
  • [官方培训]09-UE粒子基础 肖月 Epic 笔记
    UE粒子基础我们将讨论Niagara的基础操作和框架Module>Emitter>SystemGamethread.RenderthreadCustomModuleSequencer,DebuggerDataSharingAttribute,DataInterface场景交互,碰撞粒子间交互Event,AttributeReaderNiagaraFluidGridCollectionsGasExamp......
  • [官方培训]08-UE动画基础 戴浩军 Epic 笔记
    UE动画基础UE动画概述UE动画功能强大,复杂,灵活不同类型项目对动画系统应用范围各不相同“动画”作为一个宽泛概念,在引擎中有多种实现方式,需要灵活选择影视CG相关常见动画种类浏览骨骼网格体动画(动画序列,变形目标,动画曲线,PoseAsset)物理动画(刚体,布料,破碎,实时毛发模拟)顶点......
  • [官方培训]07-UE材质基础 孙丹璐 Epic 笔记
    UE材质基础什么是材质定义了场景中对象的表面属性决定光源是如何与物体表面交互反射——漫反射,镜面反射折射透射本质上应用于Mesh并控制Mesh的视觉外观固体——塑料,岩石,木板,铁块...次表面——皮肤,树叶,玉石...透明——玻璃,水基于物理-PBR(PhysicallyBasedRendering......
  • Vue的DatePicker日期选择器
    picker-option属性官网描述是这样的 1.disabledDate一般我们使用picker-option都是通过disabledDate参数,来设置其日期选择区间,代码如下:<el-col:span="12"><el-form-itemlabel="开票日期起"prop="rqq"><el-date-pickert......
  • [官方培训]06-UE光影基础 _ 李文磊 Epic 笔记
    UE光影基础光照系统UE4光照系统UE5光照系统直接光及阴影定向光源定向光源将模拟从无限远的源头处发出的光线。这意味着此光源投射出的阴影均为平行,因此适用于模拟太阳光。点光源点光源的工作原理很像一个真实的灯泡,从灯泡的钨丝向四面八方发出光。然而,为了性能考虑......
  • Epic Games Launcher 提示 应用程序无法正常启动(0xc000007b)
    事件起因:在给某同事安装EpicGamesLauncher报错,提示应用程序无法正常启动(0xc000007b) 解决办法: 用DirectX修复工具扫一下,修复一下C++插件,一般是由于MicrosoftVisualC++2017缺失或未正确引用引起的......
  • 月份DatePicker
    <template><divclass="block"><spanclass="demonstration">默认</span><el-date-pickerv-model="value1"type="monthrange"range-separator="至"star......