P3611 【[USACO17JAN]Cow Dance Show奶牛舞蹈】
想了一下还是不发以前做过的水题了,意义也不是很大,现在的话大概只有洛谷黄题以上才会收录了哦~~~
洛谷题解dalao不是P党就是优先队列,看的我作为一个新手蒟蒻好慌啊。。。
这题用二分加冒泡(你没有看错,用sort反而会超时)
先用二分决定k的值,然后判断这个k可不可行,然后继续二分,重复刚才操作
具体解释看代码:
#include<cmath>
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
int n,tmax,t,l,r;
int a[],b[];//变量就不过多介绍了,大家自己看
int shu(int k){//函数,判断当前k是否可行
for(int i=;i<=k;i++){
b[i]=a[i];
}//前k个奶牛 sort(b+1,b+1+k);//排序,因为当前数组是无序的,所以用sort for(int i=k+;i<=n;i++){
if(b[k]>tmax)return tmax+;//如果当前已经超过了,就直接退出循环
b[]+=a[i];//定向思维是减去最小的时间,但未必必须这样做
for(int j=;j<=k;j++){//传说中的冒泡粉墨登场~~~此处用sort真的会超时,不信你们自己去试试
if(b[j]>=b[j-]){//如果已经在合适的位置,就退出循环
break;
}
int x=b[j];//否则交换
b[j]=b[j-];
b[j-]=x;
}
}
return b[k];//返回最大的时间
}
int main(){
freopen("cowdance.in","r",stdin);
freopen("cowdance.out","w",stdout);//这两句话当废话处理,是我在USACO主网站上交的时候加上去的
scanf("%d%d",&n,&tmax);
for(int i=;i<=n;i++){
scanf("%d",a+i);
}//读入 l=1,r=n;//二分的准备活动(- 一二三四,二二三四) while(l<r){//二分开始,在left小于(等于)right的时候执行 int mid=(l+r)/;//取中间值
if(shu(mid)>tmax)l=mid+;//如果当前k不满足要求,增大k的值
else r=mid-;//反之缩小
}
printf("%d\n",l);//输出
return ;
}
嘿嘿~~~ 如果你们Ctrl C+Ctrl V的话,会发现一个很神奇的现象:我的程序不能AC!!!
仔细看看注释,我相信你可以改出来的哦~~~
嘻嘻新人开博鼓励一下啦!!!
P3611 【[USACO17JAN]Cow Dance Show奶牛舞蹈】的更多相关文章
- 洛谷P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈
题目描述 After several months of rehearsal, the cows are just about ready to put on their annual dance p ...
- [LUOGU] P3611 [USACO17JAN]Cow Dance Show奶牛舞蹈
https://www.luogu.org/problemnew/show/P3611 二分答案+优先队列 二分O(logn) 判一次正确性O(nlogn) 总体O(nlognlogn) 为了让pri ...
- BZOJ1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏
1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 5 ...
- BZOJ3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队
3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 89 Solve ...
- 3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队
3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队 Time Limit: 3 Sec Memory Limit: 128 MBSubmit: 129 Solv ...
- BZOJ 3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队 动态规划
3400: [Usaco2009 Mar]Cow Frisbee Team 奶牛沙盘队 题目连接: http://www.lydsy.com/JudgeOnline/problem.php?id=34 ...
- 洛谷【P3612】[USACO17JAN]Secret Cow Code秘密奶牛码
我对分治的理解:https://www.cnblogs.com/AKMer/p/9728574.html 题目传送门:https://www.luogu.org/problemnew/show/P36 ...
- Cow Dance Show
题目大意: 经过几个月的排练,奶牛们基本准备好展出她们的年度舞蹈表演.今年她们要表演的是著名的奶牛芭蕾——“cowpelia”. 表演唯一有待决定的是舞台的尺寸.一个大小为K的舞台可以支持K头牛同时在 ...
- bzoj:1666: [Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏
Description 奶牛们又在玩一种无聊的数字游戏.输得很郁闷的贝茜想请你写个程序来帮她在开局时预测结果.在游戏的开始,每头牛都会得到一个数N(1<=N<=1,000,000).此时奶 ...
随机推荐
- 关于maven的repositories
在maven repositories视图中,有local repositories和global repositories两种. local repositories是本地的库,默认目录在C:\Us ...
- POJ - 2689 Prime Distance (区间筛)
题意:求[L,R]中差值最小和最大的相邻素数(区间长度不超过1e6). 由于非素数$n$必然能被一个不超过$\sqrt n$的素数筛掉,因此首先筛出$[1,\sqrt R]$中的全部素数,然后用这些素 ...
- P2197 【模板】nim游戏
博弈初心者... 学习地址luogu上可以找到.关于比较好的证明地址放在了地址页里了.这里不再赘述. 大概感觉还是所谓先手必胜就是面对当前局面一定可以采取一种策略,然后后手无论再怎么做,先手都可以“控 ...
- MyEclipse使用教程:使用工作集组织工作区
[MyEclipse CI 2019.4.0安装包下载] 工作集允许您通过过滤掉不关注的项目来组织项目视图.激活工作集时,只有分配给它的项目才会显示在项目视图中. 如果您的视图中有大量项目,这将非常有 ...
- Jenkins环境搭建遇到的问题
参考文章 https://www.cnblogs.com/yuanluo9898/p/10724252.html 问题一:tomcat启动乱码,如图所示 解决方案:https://blog.csdn. ...
- CF 354 D 迷宫与门的旋转 BFS +状态压缩 一定要回头看看
D. Theseus and labyrinth time limit per test 3 seconds memory limit per test 256 megabytes input sta ...
- Python学习笔记:list的各种操作
向一个列表中添加单个元素: my_list = []my_list.append('我爱你') 移除列表中的某个元素: my_list.pop(0) # 0是需要移除元素在列表中的index 或者是移 ...
- .slideUp()
.slideUp() Effects > Sliding .slideUp( [duration ] [, complete ] )Returns: jQuery Description: Hi ...
- leetcode241 为运算表达式设计优先级
class Solution(object): def diffWaysToCompute(self, input): """ :type input: str :rty ...
- LDA(Latent Dirichlet Allocation)主题模型算法
原文 LDA整体流程 先定义一些字母的含义: 文档集合D,topic集合T D中每个文档d看作一个单词序列< w1,w2,...,wn >,wi表示第i个单词,设d有n个单词.(LDA里面 ...