HDU 1677 二分法进行判断
来源:互联网 发布:qc来电归属地数据库 编辑:程序博客网 时间:2024/06/05 06:13
虽然是理解了二分,但是我觉得它所采用的意思应该是和我想的是一样的,但是我自己提交就是WA
这是采用二分:
bool cmp(node a,node b)
{
if(a.w!=b.w)
{
return a.w<b.w;
}else{
return a.h>b.h;
}
}
int result(int n)
{
int l,sum=0,k,r;
int hash[20050]={0};
for(int i=0;i<n;i++)
{
l=0,r=sum;
while(l<r)
{
k=(l+r)/2;//因为r和sum相等,所以k只是略微的比l大一点,当k取整数时,和l近似相等
if(hash[k]>=num[i].h)//当前一项大于后一项的高度时,l加一,加完一后,差不多和r相等了
{
l=k+1;
}else{
r=k;//k和l近似相等,所以循环不成立
}
}
hash[l]=num[i].h;//每次循环,把前一项负值给hash,在下一个的for循环中与num[i].h做比较
if(l==sum) sum++;//sum先加一,然后必须要hash[k]>=num[i].h时,l+1才能和sum相等,即找到了不能够再次装入的盒子了,sum就把值记录下来了
}
return sum;
}
这是我采用自己的思维,可能是自己还年轻,有些隐藏的没想到吧,总是WA
sum=1,cnt=1;
for(i=0;i<n-1;i++)
{
if(num[i].h<=num[i+1].h)
{
cnt=1;
}else{
cnt++;
sum=sum>cnt?sum:cnt;
}
}
哎!错了n多次,看来只能用二分了
- HDU 1677 二分法进行判断
- 1729二分法判断
- hdu 4004 二分法
- HDU-2199 二分法
- hdu 2289 Cup (二分法)
- hdu 2199 二分法!!!
- hdu 2899 二分法+数学!!!
- HDU 1969:Pie【二分法】
- HDU 1597(二分法)
- hdu 2199 java 二分法
- HDU-1969 PIE 二分法
- HDU 2141 (二分法)
- 使用二分法进行数组操作
- 利用函数进行二分法查找
- hdu 3586 树形DP+二分法
- HDU 1025 (DP+二分法)
- HDU 2178 猜数字 【二分法】
- hdu 1025 二分法求LIS
- Linux高并发机制——epoll模型
- wget突破cookie限制--用wget批量下载中国联通沃商店app
- Android数据手册01:Android颜色码制表
- linux 死机 处理 reisub
- 【codevs1039】01年noip TG--数的划分满分dp+愚蠢深搜+pas的奇怪做法
- HDU 1677 二分法进行判断
- urllib.quote
- Java加密与解密的艺术-读书笔记1-2章
- 【LightOJ 1002】 Country Roads
- 连通性小结(贴一些模板而已)
- spring中scope作用域(转)
- 诸葛孔明的简洁之美
- LCA 转 RMQ算法 【总结】
- 原来新建一个类,需要那么长的代码,瞬间觉得有点疲惫了 ~