Boxes and Balls UVALive - 7500(练习赛爆零)
原因:
自身:
1.自己并没有考虑过精度所带来的问题。
2.一定要自己读题,独立思考,末被队友带偏(矛盾出真理)。
3.加强自身基础,提高自身实力。
队伍:
1.队友缺乏独立思考,需要加强。
题目描述:
给你n个球,求在有限次数变化中,球的变化最后稳定在一种状态。
思路:
打表找过规律后发现,稳定状态下球的个数是1,2,3,6,10,15,21.....是以等差数列的前n项和。s=(n+1)*n/2;
思路一:二分模拟(想到了,但是深度不够),没有尝试。
思路二:借二元一次方程。(x+1)*x-2n=0 可以求得x是一整一负的,取整,对于整数取齐下限xx,ans=(xx*xx+xx)/2(但是wa了,double 类的精度问题加一个判断语句即可(测试了后台数据近100组,都对,但就是wa了...比完之后才知道是精度问题,(思维的深度不够,,,))。具体看代码<_^_>....)
wa:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll; int main ()
{
int t;
scanf("%d",&t);
ll n;
int cnt=1;
while (t--)
{
scanf("%lld",&n);
ll ans ;
double x=(sqrt(8*n+1)-1)/2;
ll xx=ll(x);
ans=(xx*xx+xx)/2;
printf("Case #%d: %lld",cnt++,ans);
cout<<endl;
}
return 0;
}
ac:
#include <bits/stdc++.h>
using namespace std;
typedef unsigned long long ll;
int main ()
{
ll t;
cin>>t;
ll cnt =1;
while (t--)
{
ll n;
cin>>n;
ll ans;
ll x=(sqrt(8*n+1)-1)/2;
ans=x*x+x;
ans/=2;
if(ans>n)
{
ans=x*x-x;
ans/=2;
}
cout<<"Case #"<<cnt++<<": "<<ans<<endl;
}
return 0;
}
ac_two:(其他人的做法:貌似还是精度的问题)
#include <bits/stdc++.h>
using namespace std;
typedef unsigned long long ll;
int main ()
{
ll t;
cin>>t;
ll cnt =1;
while (t--)
{
ll n;
cin>>n;
ll ans;
ll x=(sqrt((long double)8*n+1)-1)/2;
ans=x*x+x;
ans/=2;
//if(ans>n)
//{
// ans=x*x-x;
// ans/=2;
// }
cout<<"Case #"<<cnt++<<": "<<ans<<endl;
}
return 0;
}
Boxes and Balls UVALive - 7500(练习赛爆零)的更多相关文章
- NOIp 0916 爆零记
题目来自神犇chad 上次爆零是说着玩,这次真的爆零了QAQ 好吧貌似是TYVJ的模拟赛打多了..一直按照TYVJ的格式提交的压缩包.. 然后莫名其妙就AK了hhh 来的时候迟到了半小时,昨晚痛苦的补 ...
- 爆零后的感受外加一道强联通分量HDU 4635的题解
今天又爆零了,又是又,怎么又是又,爆零爆多了,又也就经常挂嘴边了,看到这句话,你一定很想说一句””,弱菜被骂傻,也很正常啦. 如果你不开心,可以考虑往下看. 翻到E(HDU 4635 Strongly ...
- APIO2014 爆零总结
真心爆零 不要不服 这次apio给了一种新的赛制 看上去很好? 所有人都可以在线提交 并且实时知道自己的分数 它对每个题目分成若干分数段 每个分数段有若干数据 要获得这个分数段的分数需要通过这个分数段 ...
- Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals)爆零记
昨晚一个瓜皮说今晚有cf,听说是晚间场,我瞅了一眼,娃,VK Cup,上分的好机会,看着比赛时间就有点心酸了,0:35,当时一直在纠结要不要打的问题,当时想着应该不难吧,要不打一下吧,要不还是看看题先 ...
- [日常] NOIWC 2018爆零记
开个坑慢慢更(逃 (然而没准会坑掉?) day 0 大概 $8:30$ 就滚去雅礼了qwq 过去的时候发现并没有人...进报到处楼门的时候还被强行拍照围观了一波OwO 然后就领了HZ所有人的提包和狗牌 ...
- HNOI2019 爆零记
HNOI2019爆零记 day \(-inf\) ~ day \(0\) 开学一周之后才停的课,停课之后就开始每天被包菜.我三月份几乎没有更博,就是因为每天都被虐的自闭了. day \(0\) 本来是 ...
- PKUWC 2019&WC 2019爆零记
PKUWC 2019&WC 2019爆零记 毕竟过了很久了,杂七杂八的东西就不写了,并且除成绩之外的内容不保证其正确性. Day1 T1:看到这道题很舒服啊,枚举top序算合法图的数量,状压D ...
- Cgod省选的爆零日记
声明 虽然是日记,但博主太咕咕咕了,所以可能会鸽掉. 3.11 辣鸡杭二的机子,卡我常数,削我分数. 他们那边的机子好像比我们慢四倍的样子? 开局刚\(T3\),分数全靠骗. \(yy\)许久\(GG ...
- 【CF884D】Boxes And Balls 哈夫曼树
[CF884D]Boxes And Balls 题意:有n个箱子和若干个球,球的颜色也是1-n,有ai个球颜色为i,一开始所有的球都在1号箱子里,你每次可以进行如下操作: 选择1个箱子,将里面所有的球 ...
随机推荐
- 《linux就该这么学》第十六节课:第16,17章,Squid服务和iscsi网络存储
第十六章 squid总结: 正向代理:yum 安装后清空防火墙即可正常使用,客户端设置浏览器 透明正向代理:vim /etc/squid/squid.conf 59行:http_port 312 ...
- 旷视研究院Detection组负责人
http://www.skicyyu.org/ https://zhuanlan.zhihu.com/p/61910297 俞刚,旷视研究院Detection组负责人.2014年博士毕业于新加坡南洋理 ...
- SQL kaggle learn : WHERE AND
WHERE trip_start_timestamp Between '2017-01-01' And '2017-07-01' and trip_seconds > 0 and trip_mi ...
- 模块cv2的用法
一.读入图像 使用函数cv2.imread(filepath,flags)读入一副图片 filepath:要读入图片的完整路径 flags:读入图片的标志 cv2.IMREAD_COLOR:默认参数 ...
- Dev TreeList 某一列进行格式化显示
private void treeList1_GetNodeDisplayValue(object sender, GetNodeDisplayValueEventArgs e) { ...
- PAT (Advanced Level) Practice 1001 A+B Format (20 分)
题目链接:https://pintia.cn/problem-sets/994805342720868352/problems/994805528788582400 Calculate a+b and ...
- 【融云分析】如何实现分布式场景下唯一 ID 生成?
◀背景▶ 对于一套分布式部署的 IM 系统,要求每条消息的 ID 要保证在集群中全局唯一且按生成时间有序排列.如何快速高效的生成消息数据的唯一 ID ,是影响系统吞吐量的关键因素.那么,融云是如何做到 ...
- linux单项目发布流程
1.安装python #1.安装python3.7所需要的依赖包yum -y groupinstall "Development tools"yum -y install zlib ...
- 使用特性将数据库返回的datatable转换成对象列表
public class ColumnMapAttribute : Attribute { private readonly string _name; public ColumnMapAttribu ...
- linux和windows下icmp的区别
实验方式:先从linux虚拟机ping windows主机,然后从windows主机ping linux虚拟机,在pc上采用wireshark抓包. 如下(只保留了关键信息) 可以看到linux发出的 ...