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个箱子,将里面所有的球 ...
随机推荐
- mysql修改用户密码笔记(转)
方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:my ...
- 常见的四种文本自动分词详解及IK Analyze的代码实现
以下解释来源于网络-百度百科 1.word分词器 word分词 [1] 是一个Java实现的分布式的中文分词组件,提供了多种基于词典的分词算法,并利用ngram模型来消除歧义.能准确识别英文.数字, ...
- [阿里云] 云数据库mongodb外网连接
原教程,https://www.alibabacloud.com/help/zh/doc-detail/55253.htm 但按照这里的教程,还是连不上mongdb,甚至在ECS上也ping不通mon ...
- 佳佳的Fibonacci
#include<cstdio> #include<cstring> #include<iostream> #include<cmath> #inclu ...
- Yii2.0 上使用 redis
1. 通过composer进行安装,到项目根目录cmd运行 php composer.phar require --prefer-dist yiisoft/yii2-redis或者添加 "y ...
- left join on +多条件与where区别
left join on +多条件与where区别 重点 先匹配,再筛选where条件. 本文将通过几个例子说明两者的差别. 1. 单个条件 select * from product a left ...
- wpf中插入winform控件并获取句柄
因工作需要使用wpf做界面,而有个开发包依赖picturebox控件,上网研究了一下,总算弄通了. 首先在项目中添加引用System.Windows.Forms与WindowsFormsIntegra ...
- coredump文件抓取设置
ulimit -c unlimitedecho 1 > /proc/sys/kernel/core_uses_pidecho "/tmp/core-%e-%s-%u-%g-%p-%t& ...
- 2.4JAVA基础复习——JAVA语言的基础组成数组
JAVA语言的基础组成有: 1.关键字:被赋予特殊含义的单词. 2.标识符:用来标识的符号. 3.注释:用来注释说明程序的文字. 4.常量和变量:内存存储区域的表示. 5.运算符:程序中用来运算的符号 ...
- ROS之坑
我使用ROS建图的时候,用的是Kinect的深度信息转换成laser scan,Rviz仿真环境调用出laser scan信息的时候显示如下错误: Transform [sender=unknown_ ...