摘要: 很简单的算法,现在用的是循环的形式的。注意中间变量设置成x+(y x)/2(紫书上说为了确保靠近区间起点)左边变大设置成x=t+1;右边变小设置成y=t; 代码(基本思路,可以随意转换实现历程) 阅读全文
posted @ 2018-10-13 22:51 baccano! 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 模拟题 开一个容器进行模拟即可,注意容器设置初始大小不然容易re。设置两个指针l,r。把容器当作桶,每一个桶都有一个编号表示位置,左边进入那么就是编号为l,右边一样。然后l 或者r++,l=r=0的初始值,第一个元素为0,然后同时l ,r++ 代码(cf上题解的算法) include using n 阅读全文
posted @ 2018-10-13 13:44 baccano! 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 贪心题 策略 在最左边设置一个array 0,每一次从右往左,如果有heater的话就寻找heater左边界是不是小于等于目前的上一个heater的右边界,如果没有一个这样的,那么就直接输出 1 代码(cf的题解的算法) include using namespace std; int a[1100 阅读全文
posted @ 2018-10-13 13:39 baccano! 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 数学题。用右边界以内的区间内的灯减去左边界以内区间内的灯,并且如果左边界正好有灯再减去一即可 我的代码 include using namespace std; main() { int n; cin n; while(n ) { int ll,v,l,r; int num=0;int sum=0; 阅读全文
posted @ 2018-10-13 13:33 baccano! 阅读(223) 评论(0) 推荐(0) 编辑