摘要:
inplace_merge函数的作用和merge函数差不多,只不过是在一个容器中进行归并。函数参数:inplace_merge(first,mid,last,compare);//将[first,mid) 和 [mid,last)这两个区间进行归并成一个有序序列。注意:[first,mid)和[mid,last)都要呈升序或降序排列!还记得归并排序的写法么?归并排序利用了分治的思想,将一个容器分割,然后再将它们一个个合并起来,最后形成一个有序的序列。归并排序的核心代码就在于合并两个序列,不过STL的开发人员已经为我们完成了,我们直接调用就可以了。例题:给你n个学生的信息,根据它们的分数从小到大
阅读全文
posted @ 2012-05-26 17:45
cchun
阅读(5331)
推荐(0)
编辑
摘要:
/**Time: 125ms*题目大意:* 给定一个n,代表有n种操作,push代表把元素放入容器。* pop a,表示在容器中取出小于或等于a的最大元素。*解题思路:* 用multiset来模拟这个过程即可。*/View Code 1 #include<iostream> 2 #include<set> 3 using namespace std; 4 int main() 5 { 6 #ifndef ONLINE_JUDGE 7 freopen("in.txt", "r", stdin); 8 #endif 9 int n,
阅读全文
posted @ 2012-05-26 15:26
cchun
阅读(214)
推荐(0)
编辑
摘要:
/**题目大意:* 给定a, b, c,代表三种不同颜色的球的个数,然后规定* 如果把任意两种不同颜色的球放在一起,那么它们两个* 的颜色将变成第三种颜色的球的颜色。求判断最后所有的* 球能否变成同一种颜色,如果能,输出最小步数。否则输* 出):。*解题思路:* 广搜实现不了,因为a,b,c都是<=1000,标志状态的数组太* 大。其实就是找规律。其实a, b, c由a-x,b-x,c+2x可得到只* 要三种球的个数其中任意两种球个数只差是3的倍数,即可* 变成同一种颜色。*解题感想:* wa了2次,第一次忽略了,其实只要有两种满足三的倍数,* 那么即使另外一种球的个数小...
阅读全文
posted @ 2012-05-26 15:16
cchun
阅读(251)
推荐(0)
编辑
摘要:
/**题目大意:* 有一排车,每辆车有长度以及速度,保证每辆车* 不想撞的情况下,这些车最快通过路口的时间。*解题思路:* 求出这些车中的最小速度,总路程除以最小速度即可。*/View Code 1 #include <iostream> 2 using namespace std; 3 int main(void) 4 { 5 int n; 6 while(scanf("%d", &n) == 1) 7 { 8 int len, speed; 9 double MinSpe = INT_MAX, sum = 0;10 ...
阅读全文
posted @ 2012-05-26 15:10
cchun
阅读(170)
推荐(0)
编辑