题目链接

题意:有一壶水, 体积在 L和 R之间, 有两个杯子, 你要把水倒到两个杯子里面, 使得杯子水体积几乎相同(体积的差值小于等于1), 并且使得壶里剩下水体积不大于1. 你无法测量壶里剩下水的体积, 问最小需要倒水的次数。

题解:考虑倒水的大致过程,L = 0 和 L = 1 的情况应该是等价的,所以不妨设 L > 0。首先向一个杯子倒 L/2 升水,再往另一个杯子倒  L/2+1 升水。接下来就来回往两个杯子里倒 2 升,直到倒空为止。这样就很容易分析出需要倒水的次数。唯一注意的是最后壶里面可以剩下 1 升水,可以省一次倒水的操作。

以上就是官方的题意题解了,下面来总结一下我自己的看法和自己犯的错误。比赛的时候队友把这个题过了,我后来也写了一次没过zzz,比照她的代码写了个生成随机数跑了N组数据比照data1.out和data2.out找到了好多错误样例慢慢调试终于过了TAT。开始的时候考虑的不够周到,理解成来回往两个杯子里倒1升了,后来改对了。这道题我们只需要考虑R-1升水因为可以剩1升,r=0,r=1 输出0,r=2输出1即可。当l>0时,我们可以直接考虑l+2升水,比如l=3,我们考虑5,一个2一个3,先倒个2,另一个就算不足3也没关系因为最少是1是符合题意的,相当于越界到l+2,即我们只需要考虑(r-1)-(l+2)升水,两升两升取,直接除以2如果奇数就再加一次就行了。这里要特别注意l=0的时候只能越到l+1,因为L=0的时候两个杯子拉不开差距只能越到L+1,剩下同理。还有就是要注意当l和R离得很近的时候要特判一下,如果近到一定程度可以直接输出1或者2,负数跑进奇偶性判断那就不对了,当然也可以用max(sum,0)来实现。还要注意if else能输出就直接输出,别最后输出容易max错成别的数。0ms就可以过。

我的代码:

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll l,r;
while(scanf("%I64d%I64d",&l,&r)!=EOF)
{
ll ans;
if (r<=) puts("");
else if(r<=) puts("");
else if(l==) //越到L+1
{
ll sum=r-l-;
if(sum<)
ans=;
else if(sum%==)
ans=sum/+;
else
ans=sum/+;
printf("%I64d\n",ans);
}
else //越到L+2
{
ll sum=r-l-;
if(sum<)
ans=;
else if(sum%==)
ans=sum/+;
else
ans=sum/+;
printf("%I64d\n",ans);
}
}
return ;
}

队友代码:

#include <iostream>
#include<cstdio>
using namespace std;
long long max(long long l,long long r)
{
if(l<r)return r;
return l;
}
int main()
{
long long l,r;
while(~scanf("%I64d%I64d",&l,&r))
{
if(r>)printf("%I64d\n",max((r-max(l,1LL))/+,));
else if(r>)puts("");
else puts(""); } return ;
}

HDU 5881 Tea -2016 ICPC 青岛赛区网络赛的更多相关文章

  1. HDU 5884 Sort -2016 ICPC 青岛赛区网络赛

    题目链接 #include <iostream> #include <math.h> #include <stdio.h> #include<algorith ...

  2. HDU 5879 Cure -2016 ICPC 青岛赛区网络赛

    题目链接 题意:给定一个数n,求1到n中的每一项的平方分之一的累加和. 题解:题目没有给数据范围,而实际上n很大很大超过long long.因为题目只要求输出五位小数,我们发现当数大到一定程度时值是固 ...

  3. HDU 5875 Function -2016 ICPC 大连赛区网络赛

    题目链接 网络赛的水实在太深,这场居然没出线zzz,差了一点点,看到这道题的的时候就剩半个小时了.上面是官方的题意题解,打完了才知道暴力就可以过,暴力我们当时是想出来了的,如果稍稍再优化一下估计就过了 ...

  4. HDU 5878 I Count Two Three (打表+二分查找) -2016 ICPC 青岛赛区网络赛

    题目链接 题意:给定一个数n,求大于n的第一个只包含2357四个因子的数(但是不能不包含其中任意一种),求这个数. 题解:打表+二分即可. #include <iostream> #inc ...

  5. hdu 5881 Tea (2016 acm 青岛网络赛)

    原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=5881 Tea Time Limit: 3000/1000 MS (Java/Others)    Me ...

  6. HDU 5894 hannnnah_j’s Biological Test (组合数学) -2016 ICPC沈阳赛区网络赛

    题目链接 #include <map> #include <queue> #include <math.h> #include <stdio.h> #i ...

  7. HDU 5898 odd-even number (数位DP) -2016 ICPC沈阳赛区网络赛

    题目链接 题意:一个数字,它每个数位上的奇数都形成偶数长度的段,偶数位都形成奇数长度的段他就是好的.问[L , R]的好数个数. 题解:裸的数位dp, 从高到低考虑每个数位, 状态里存下到当前位为止的 ...

  8. HDU 5901 Count primes (1e11内的素数个数) -2016 ICPC沈阳赛区网络赛

    题目链接 题意:求[1,n]有多少个素数,1<=n<=10^11.时限为6000ms. 官方题解:一个模板题, 具体方法参考wiki或者Four Divisors. 题解:给出两种代码. ...

  9. 2017青岛赛区网络赛 Smallest Minimum Cut 求最小割的最小割边数

    先最大流跑一遍 在残存网络上把满流边容量+1 非满流边容量设为无穷大 在进行一次最大流即可 (这里的边都不包括建图时用于反悔的反向边) #include<cstdio> #include& ...

随机推荐

  1. Outlook不能打开附件(提示:无法创建文件xx,请右键单击要在其中创建文件的文件夹..)

    问题分析: 出现这种问题的几率很小,除非你是每天都需要使用Outlook的办公人员.出现这种问题我想有如下两种可能.1.注册表中指定的附档临时保存的目录没有写入的相关权限.2.同名附档已存在且权限出现 ...

  2. HDOJ 4497 GCD and LCM

    组合数学 GCD and LCM Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others) ...

  3. 【bzoj1060】[ZJOI2007]时态同步

    题目描述 小Q在电子工艺实习课上学习焊接电路板.一块电路板由若干个元件组成,我们不妨称之为节点,并将其用数字1,2,3-.进行标号.电路板的各个节点由若干不相交的导线相连接,且对于电路板的任何两个节点 ...

  4. hadoop 集群 加入一个新的存储节点和删除一个计算节点需要刷新集群状态命令

    加入一个新的存储节点和删除一个计算节点需要刷新集群状态命令 方式1:静态添加datanode,停止namenode方式 1.停止namenode 2.修改slaves文件,并更新到各个节点3.启动na ...

  5. 大数据之Ganglia安装1

    0.前期准备修改主机名.ip.iptables关闭:时间同步:ntpdate -s time.windows.com;软件准备ganglia-3.7.1.tar.gz.ganglia-web-3.7. ...

  6. leofs存储总结

    1.leofs角色 Account(账户).Bucket(对象桶).Object(对象), gateway.manager0.manager1.storage Account 一个account可以创 ...

  7. 关于phpcms中mysql和mysqli的区别

    用phpcms开发一个考试成绩查询的小模块,用电脑上以前下载的phpcms版本为框架开发,一切顺利.想着下载一个最新版本,以后也免了升级的麻烦.于是,下载好,然后把模块目录.model数据库连接文件. ...

  8. ii7安装php

    http://www.jb51.net/article/22372.htm 我们知道php配置有几种: 1.CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使 ...

  9. MongoDB的索引(四)

    创建索引的好处是可以加快查询速度,但是但来的负面影响就是磁盘的开销和降低写入性嫩. 查看评判当前索引构建情况方法: 1. 使用mongostat工具: 查看mongodb运行状态的程序 使用格式:mo ...

  10. CSS技巧-rgba函数的妙用

    先简单介绍一下: rgba()函数是平时开发中经常遇到的,这篇文章也做了一个比较详细的解读以及一系列的应用. 对它的工作原理做一番分析:就是具有一定透明度的盒子: 还比较了rgba()函数和不透明度属 ...