Flower(规律+逆向思维)
2024-09-08 06:44:46
Flower:
传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6486
题解:
逆向思维+规律
因为每次剪n-1,所以逆向就是控制n-1朵不变,每次增高1朵,直到所有等高,即所有的高度都等于最高的那一朵,记录增高的次数为sum,反过来就是最高的那个减少sum,
如果减少sum后小于1则不成立,大于等于1,则需要减少sum次。
sum=每朵花与最高的差的和。
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
ll n;
scanf("%lld",&n);
int i;
ll a[];
for(i=;i<n;i++)
{
scanf("%lld",&a[i]);
}
sort(a,a+n);
ll sum=;
for(i=;i<n;i++)
{
sum+=(a[n-]-a[i]);
}
if(a[n-]-sum<)
printf("-1\n");
else
printf("%lld\n",sum);
}
return ;
}
最新文章
- 使用 JSONP 实现简单的 SSO 单点登录
- mysqld诡异crash
- MVC 项目中为什么会有两个web.config
- csharp: InvokeHelper
- 特征向量-Eigenvalues_and_eigenvectors#Graphs
- Java Base64编码解码实现
- Java API ——Character类
- docker daemonize sshd service
- C++类的成员初始化列表的相关问题
- 转:Web网站性能测试分析及调优实例
- Kafka入门介绍
- Storm入门(二)集群环境安装
- JavaMail技术实现邮件发送转【】
- JConsole监控Linux上的Tomcat
- this is incompatible with sql_mode=only_full_group_by
- SMBus与I2C的差别
- andriod 获得MP4时长
- conda 管理 python 版本
- 多并发编程基础 之线程程 Thried
- Xposed模块开发基本方法记录
热门文章
- nginx在Windows环境安装
- Synchronized 和 Lock 的主要区别(转)
- web项目服务器安装及配置(虚拟机centOS7)
- 用于RISC-V的Makefile示例
- Android Jetpack组件
- django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17)
- TypeScript_基础数据类型
- Java中重载(overloading)和重写(Overriding)的区别
- MYSQL5.7.24编译安装
- c# String类