常州大学新生寒假训练会试 F-大佬的生日大礼包
2018-03-04 10:27
253 查看
链接:https://www.nowcoder.com/acm/contest/78/F
来源:牛客网
幸运礼包:一个U盘、两个鼠标。
普通礼包:两个U盘、一个鼠标。
大佬一共准备了a个U盘、b个鼠标和c个机械键盘。为了给更多的人带来足够多的惊喜,大佬希望相邻的两位领礼包的参赛选手拿到的礼包类型都是不同的。 由于大佬正在宴请Final选手,并没有空打理这些,所以想让你告诉他 这些奖品最多可以发出多少份礼包。
不能有连续的礼包,即总礼包共有x个,对于任意礼包
若x为偶数,则任意礼包不超过x/2,若x为奇数,则不超
过x/2+1。
因此便可以二分x求解,对于任意礼包都有一个鼠标
和一个U盘,而对于1礼包只需多加一个键盘,2礼包
多加一个鼠标,3礼包多加一个U盘。
代码:
#include<bits/stdc++.h>
using namespace std;
bool yes(int m,int a,int b,int c)
{
int ans=0;
int tt;
if(m%2)tt=m/2+1;
else tt=m/2;
ans+=min(tt,a);
ans+=min(tt,b);
ans+=min(tt,c);
if(ans>=m)return 1;
return 0;
}
int main()
{
int T;scanf("%d",&T);
while(T--)
{
int a,b,c;scanf("%d%d%d",&a,&b,&c);
int l=0,r=min(a,b)+1;
while(r-l>1)
{
int m=(l+r)>>1;
if(yes(m,a-m,b-m,c))l=m;
else r=m;
}
printf("%d\n",l);
}
return 0;
}
来源:牛客网
题目描述
今天是某不愿透露姓名的谈姓大佬的生日,转发这场比赛到三个群就可以,获得以下三种礼包之一。 豪华礼包:一个U盘、一个鼠标和一个机械键盘。幸运礼包:一个U盘、两个鼠标。
普通礼包:两个U盘、一个鼠标。
大佬一共准备了a个U盘、b个鼠标和c个机械键盘。为了给更多的人带来足够多的惊喜,大佬希望相邻的两位领礼包的参赛选手拿到的礼包类型都是不同的。 由于大佬正在宴请Final选手,并没有空打理这些,所以想让你告诉他 这些奖品最多可以发出多少份礼包。
输入描述:
输入第一行包含一个正整数T。 接下来T行每行包含3个正整数a, b, c,依次表示U盘、鼠标和机械键盘各有多少个。
输出描述:
输出T行,每行一个整数,表示最多能发出多少份礼包。题解:不能有连续的礼包,即总礼包共有x个,对于任意礼包
若x为偶数,则任意礼包不超过x/2,若x为奇数,则不超
过x/2+1。
因此便可以二分x求解,对于任意礼包都有一个鼠标
和一个U盘,而对于1礼包只需多加一个键盘,2礼包
多加一个鼠标,3礼包多加一个U盘。
代码:
#include<bits/stdc++.h>
using namespace std;
bool yes(int m,int a,int b,int c)
{
int ans=0;
int tt;
if(m%2)tt=m/2+1;
else tt=m/2;
ans+=min(tt,a);
ans+=min(tt,b);
ans+=min(tt,c);
if(ans>=m)return 1;
return 0;
}
int main()
{
int T;scanf("%d",&T);
while(T--)
{
int a,b,c;scanf("%d%d%d",&a,&b,&c);
int l=0,r=min(a,b)+1;
while(r-l>1)
{
int m=(l+r)>>1;
if(yes(m,a-m,b-m,c))l=m;
else r=m;
}
printf("%d\n",l);
}
return 0;
}
相关文章推荐
- 常州大学新生寒假训练会试 - (E,G,H)
- 常州大学新生寒假训练会试 G 零下e度 【错排公式 + n!/e】
- 常州大学新生寒假训练会试 I-合成反应(bfs)
- 常州大学新生寒假训练会试
- 常州大学新生寒假训练会试
- 常州大学新生寒假训练会试 A-添加逗号
- 常州大学新生寒假训练会试 H-酸碱滴定
- 【常州大学新生寒假训练会试】 合成反应 【BFS or 暴力】
- 【常州大学新生寒假训练会试】D 训练技巧 【单调栈+DP】
- 常州大学新生寒假训练会试 题解
- 常州大学新生寒假训练会试 G-零下e度
- 常州大学新生寒假训练会试 I 合成反应 【 预处理 + 暴力 】
- 常州大学新生寒假训练会试 H 酸碱滴定【精度 】
- 常州大学新生寒假训练会试-G-零下e度(错排公式应用)
- 常州大学新生寒假训练会试 D 训练技巧【dp + 单调队列优化】
- 常州大学新生寒假训练会试 D-训练技巧【动态规划】
- 常州大学新生寒假训练会试-D-训练技巧(DP+单调队列)
- 牛客-常州大学新生寒假训练会试
- nowcoder 常州大学 新生 I
- 一月17日新生冬季练习赛解题报告 A.小Q的生日