Buy Sticks

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 868    Accepted Submission(s): 392

Problem Description
Imyourgod
need 3 kinds of sticks which have different sizes: 20cm, 28cm and 32cm.
However the shop only sell 75-centimeter-long sticks. So he have to cut
off the long stick. How many sticks he must buy at least.
 
Input
The first line of input contains a number t, which means there are t cases of the test data.
There
will be several test cases in the problem, each in one line. Each test
cases are described by 3 non-negtive-integers separated by one space
representing the number of sticks of 20cm, 28cm and 32cm. All numbers
are less than 10^6.
 
Output
The
output contains one line for each line in the input case. This line
contains the minimal number of 75-centimeter-long sticks he must buy.
Format are shown as Sample Output.
 
Sample Input
2
3 1 1
4 2 2
 
Sample Output
Case 1: 2
Case 2: 3
 
Author
imyourgod (Special Thanks : crackerwang & Louty)
 
Source
 
题意:需要 x 根20cm,y根 28cm,z根 32cm,问最少需要多少根 75 cm的木棍才可以都分出来?
题解:贪心的去选,先选3根的,选不了了才能选2根的,最后如果还有剩才能选一根的.
这些情况分别是
20 20 28
20 20 32
20 20 20
32 28
28 28
32 32
20
28
32
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <algorithm>
#define LL long long
using namespace std;
int main()
{
int tcase,t = ;
scanf("%d",&tcase);
while(tcase--)
{
int x,y,z;
scanf("%d%d%d",&x,&y,&z);
int ans = ,a,b,c;
if(x>=&&y>=){ /// 20 20 28
a = x/,b=y;
c = min(a,b);
x=x-*c,y=y-c;
ans+=c;
}
if(x>=&&z>=){ ///20 20 32
a = x/,b = z;
c = min(a,b);
x=x-*c,z=z-c;
ans+=c;
}
if(x>=){ ///20 20 20
a = x/;
x = x%;
ans+=a;
}
if(y>=&&z>=){ ///28 32
c = min(y,z);
ans+=c;
y-=c;
z-=c;
}
if(y>=){ ///28 28
c = y/;
y = y%;
ans+=c;
}
if(z>=){///32 32
c = z/;
z = z%;
ans+=c;
}
if(x||y||z) ans++;
printf("Case %d: %d\n",t++,ans);
}
return ;
}

hdu 3573(数学+贪心)的更多相关文章

  1. hdu 5747(数学,贪心)

    Aaronson Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total ...

  2. HDU 5984 数学期望

    对长为L的棒子随机取一点分割两部分,抛弃左边一部分,重复过程,直到长度小于d,问操作次数的期望. 区域赛的题,比较基础的概率论,我记得教材上有道很像的题,对1/len积分,$ln(L)-ln(d)+1 ...

  3. Hdu 4864(Task 贪心)(Java实现)

    Hdu 4864(Task 贪心) 原题链接 题意:给定n台机器和m个任务,任务和机器都有工作时间值和工作等级值,一个机器只能执行一个任务,且执行任务的条件位机器的两个值都大于等于任务的值,每完成一个 ...

  4. D - 淡黄的长裙 HDU - 4221(贪心)

    D - 淡黄的长裙 HDU - 4221(贪心) James is almost mad! Currently, he was assigned a lot of works to do, so ma ...

  5. hdu 4091 数学思维题贪心

    /* 参看博客地址:http://blog.csdn.net/oceanlight/article/details/7857713 重点是取完最优的后剩余的rest=n%lcm+lcm;中性价比小的数 ...

  6. hdu 2037简单贪心--活动安排问题

    活动安排问题就是要在所给的活动集合中选出最大的相容活动子集合,是可以用贪心算法有效求解的很好例子.该问题要求高效地安排一系列争用某一公共资源的活动.贪心算法提供了一个简单.漂亮的方法使得尽可能多的活动 ...

  7. HDU 4864 Task (贪心+STL多集(二分)+邻接表存储)(杭电多校训练赛第一场1004)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4864 解题报告:有n台机器用来完成m个任务,每个任务有一个难度值和一个需要完成的时间,每台机器有一个可 ...

  8. HDU 4310 Hero (贪心算法)

    A - Hero Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Sta ...

  9. hdu 4268 multiset+贪心

    Alice和Bob有n个长方形,有长度和宽度,一个矩形可以覆盖另一个矩形的条件的是,本身长度大于等于另一个矩形,且宽度大于等于另一个矩形,矩形不可旋转,问你Alice最多能覆盖Bob的几个矩形? /* ...

随机推荐

  1. 国内外三个领域巨头告诉你Redis怎么用

    随着数据体积的激增,MySQL+memcache已经满足不了大型互联网类应用的需求,许多机构也纷纷选择Redis作为其架构上的补充.这里我们将为大家分享社交巨头新浪微博.传媒巨头Viacom及图片分享 ...

  2. 女神(goddess)——组合数学

    出自某模拟赛. 题目大意: 对1e9+7取模. 数据范围  20 % : n<=300 40 % : n<=2,000 50 % : n<=10,000 70 % : n<=1 ...

  3. Android Studio常用的快捷键

    罗列一些常用的快捷键 全局快捷键(比较重要的)   ALT + ENTER 工程快速修复 CTRL + SHIFT + A 快速查找 CTRL + ALT + L (Win) 格式化代码(我的锁屏的快 ...

  4. 一些常见算法的JavaScript实现

    在Web开发中,JavaScript很重要,算法也很重要.下面整理了一下一些常见的算法在JavaScript下的实现,包括二分法.求字符串长度.数组去重.插入排序.选择排序.希尔排序.快速排序.冒泡法 ...

  5. bzoj1467 Pku3243 clever Y

    1467: Pku3243 clever Y Time Limit: 4 Sec  Memory Limit: 64 MBSubmit: 313  Solved: 181[Submit][Status ...

  6. 树莓派更改vnc分辨率

    参考链接:https://raspberrypi.stackexchange.com/questions/56421/how-to-increase-resolution-on-latest-rasp ...

  7. git 从新的git 库中拉取---变换git地址用;

    2.先删后加 git remote rm origin git remote add origin [url]----- example :   git remote add origin http: ...

  8. python基础之列表、字典、元祖等 (二)

    一.作用域 if 1==1: name = 'weibinf' print name 下面的结论对吗? 外层变量,可以被内层变量使用 内层变量,无法被外层变量使用 二.三元运算 result = 值1 ...

  9. ubuntu学习命令

    1.双系统下挂载windows硬盘 检测ntfs-3g是否安装:locate ntfs-3g 没有则安装: sudo apt-get install ntfs-3g 查看硬盘信息: sudo fdis ...

  10. C11线程管理:原子变量&单调函数

    1.原子变量 C++11提供了原子类型std::atomic<T>,可以使用任意类型作为模板参数,使用原子变量就不需要使用互斥量来保护该变量,用起来更加简洁. 举个例子,如果要做一个计数器 ...