算法竞赛入门经典5.2 STL初步】的更多相关文章

1. 排序和检索,学会使用sort排序,以及low_bound函数 Raju and Meena love to play with Marbles. They have got a lot of marbles with numbers written on them. At the beginning, Raju would place the marbles one after another in ascending order of the numbers written on the…
//#include<bits/stdc++.h> #include<cstring> #include<iostream> #include<cstdio> #include<time.h>///调用time的头文件. #include<algorithm> #include<vector> #include<cstdlib>///调用rand的头文件. #include<assert.h>///…
本题是映射:map的例题. map:键值对. [题目] 输入一些单词,找出所有满足如下条件的单词:该单词不能通过字母重排,得到输入文本中的另外一个单词. 在判断是否满足条件时,字母不分大小写,但在输出时应保留输入中的大小写,按字典序进行排列(所有大写字母在所有小写字母的前面). [输入] ladder came tape soon leader acme RIDE lone Dreis peat ScAlE orb eye Rides dealer NotE derail LaCeS drIed…
http://www.cnblogs.com/sxiszero/p/3618737.html 下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinejudge.org 西班牙Valladolid大学的程序在线评测系统,是历史最悠久.最著名的OJ. 二.<算法竞赛入门经典> 刘汝佳  (UVaOJ  351道题) 以下部分内容摘自:http://sdkd…
下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinejudge.org 西班牙Valladolid大学的程序在线评测系统,是历史最悠久.最著名的OJ. 二.<算法竞赛入门经典> 刘汝佳  (UVaOJ  351道题) 以下部分内容摘自:http://sdkdacm.5d6d.com/thread-6-1-1.html “AOAPC I”是刘汝佳(大名…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-4/UVa11809:Floating-Point Numbers 代码: //UVa11809 - Floating-Point Numbers #include<iostream> #include<sstream> #include<cmath> long long E[12][33], e; double M[12][33], m, re; char s…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-10/UVa1587:Box 代码: //UVa1587 - Box #include<iostream> unsigned rect[6];//每个面各有一个一样的对应面,故12个边只要定义6个,其中每偶奇两个代表一个长方形的两个边长 bool flag, times[3];//每个面出现的次数(出现第二次时为true) unsigned tmpx, tmpy, now; int m…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 都是<算法竞赛入门经典(第二版)>的题目,标题上没写(第二版) 题目:算法竞赛入门经典 3-7/UVa1368:DNA Consensus String 代码: //UVa1368 - DNA Consensus String #include<iostream> using namespace std; #define MAX_M 52 #define MAX_N 1005 char DNA[MAX…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-4/UVa455:Periodic Strings 代码: //UVa455 #include<iostream> int main() { char str[82]; int num; std::cin >> num; while (num--) { std::cin>>str; char *ps = str; while (*++ps != '\0') {…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO(我也是在网上找到的pdf,但不记得是从哪里搜刮到的了,就重新上传了一遍) PS:第一次写博客分享我的代码,不知道我对csdn的使用姿势对不对.想不出来要说些什么哈o(^▽^)o,那就直接开工,先写一篇试试. 题目:算法竞赛入门经典 3-1/UVa1585:Score 代码: #include<iostream> #define MAX 83 int main() { int num; std::cin >&…
A Communist regime is trying to redistribute wealth in a village. They have have decided to sit everyone around a circular table. First, everyone has converted all of their properties to coins of equal value, such that the total number of coins is di…
题意: 一排有着不同能力值的人比赛,规定裁判的序号只能在两人之间,而且技能值也只能在两人之间 问题: <算法竞赛入门经典-训练指南>的分析: 上代码: #include<iostream> #include<cstring> using namespace std; +; +; int a[maxn]; int BIt[maxa]; int c[maxn]; int d[maxn]; int n; long long ans; int lowbit(int x) { r…
1-1:整数值用%d输出,实数用%f输出. 1-2:整数/整数=整数,浮点数/浮点数=浮点数. 1-3:scanf中的占位符和变量的数据类型应一一对应,且每个变量前需要加&符号. 1-4:在算法竞赛中,输入前不要打印提示信息.输出完毕后应立即终止程序,不 要等待用户按键,因为输入输出过程都是自动的,没有人工干预. 1-5:在算法竞赛中不要使用头文件conio.h,包括getch().clrscr()等函数. 1-6:在算法竞赛中,每行输出均应以回车符结束,包括最后一行.除非特别说明,每行的行首不…
习题2-1 位数 输入一个不超过109的正整数,输出它的位数.例如12735的位数是5.请不要使用任何数学函数,只用四则运算和循环语句实现. #include<stdio.h> int main(void) { int n; ; scanf("%d",&n); while(n) { n = n / ; digit++; } printf("%d\n", digit); ; } 习题2-2 水仙花数 输出100~999中的所有水仙花数.若3位数AB…
虽然都是算法基础,不过做了之后还是感觉有长进的,前期基础不打好后面学得很艰难的,现在才慢慢明白这个道理. 闲话少说,上VOJ上的专题训练吧:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=40741#overview 1. A UVA 10602 Editor Nottoobad 好像是俄罗斯NOI的题目,题意是给定n个字符串,然后重新安排字符串的顺序,使得最后需要打的字母总数最少.当前单词和前一个单词相同的前面部分可以不用打, 只需打…
题意:在前100000个Fibonacci(以下简称F)数字里,能否在这100000个F里找出以某些数字作为开头的F.要求找出下标最小的.没找到输出-1. 代码:(Accepted,0.250s) //UVa12333 - Revenge of Fibonacci //Accepted 0.250s //#define _XIENAOBAN_ #include<iostream> #include<cstring> #define MAXS 0xffffff #define CIN…
题意:模拟客服MM,一共有N种话题,每个客服MM支持处理其中的i个(i < N),处理的话题还有优先级.为了简化流程方便出题,设每个话题都是每隔m分钟来咨询一次.现知道每个话题前来咨询的时间.间隔.处理此话题所需的时长与一共有多少次咨询.问多少时间后全部话题处理完成. 代码:(Accepted,0.010s) //UVa822 - Queue and A //Accepted 0.010s //#define _XIENAOBAN_ #include<algorithm> #includ…
题意:不难理解,照搬题意的解法. 代码:(Accepted,0.190s) //UVa1597 - Searching the Web //#define _XIENAOBAN_ #include<iostream> #include<sstream> #include<cstring> #include<string> #include<vector> #include<map> #include<set> using…
//开学了,好烦啊啊啊啊啊!怎么开个学那么多破事情!!都俩星期了,终于有时间写出来一道题 题意:不难理解,不写了.这几天忙的心累. 代码:(Accepted, 0.010s) //UVa1596 - Bug Hunt #include<iostream> #include<sstream> #include<string> #include<stack> #include<map> using namespace std; struct o_O…
//又开学啦,不知不觉成为大二的老人了...时间过得好快啊,感觉好颓废... 题意:建立一个借书/归还系统.有借.还.把还的书插到书架上这三个指令. 代码:(Accepted, 0ms) //UVa230 - Borrowers #include<iostream> #include<string> #include<map> #include<set> using namespace std; struct BOOK { string au, ti; BO…
题意:一堆文件但只有一个打印机,按优先级与排队顺序进行打印.也就是在一个可以插队的的队列里,问你何时可以打印到.至于这个插队啊,题目说"Of course, those annoying term papers that others are printing may have to wait for quite some time to get printed, but that's life."嗯,这就是生活. 代码:(Accepted, 0ms) //UVa12100 - Pri…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa10935 - Throwing cards away I #include<iostream> #include<queue> int N; int main() { //freopen("in.txt", "r", stdin); while (scanf("%d", &N) !=…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa1593 - Alignment of Code #include<iostream> #include<algorithm> #include<vector> #include<string> #include<sstream> #include<iterator> #include<iomanip…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa12108 - Extraordinarily Tired Students #include<iostream> struct how_cute_my_sleepy_boys_are { int a,//awaken period : a>=1; b,//sleeping period : b<=5; s,//state : 0醒着,1睡觉; t;//…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa509 - RAID! #include<iostream> int d, s, b, t, times = 0; char disk_data[7][6666], type; inline char* disk(int x, int y, int z) {//二维数组当作三维数组使,方便运算 return *(disk_data + x - 1) + (y - 1…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,10 ms) //UVa508 - Morse Mismatches #include<iostream> #include<string> #include<map> using namespace std; map<char, string> morse; map<string, string> word; string wo, tra…
书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 代码:(Accepted,0 ms) //UVa1590 - IP Networks #include<iostream> unsigned i, m, num, ip[4], ipmax[4], ipmin[4], mask[4]; int cmp(unsigned *a, unsigned *b) {//compare for (int i = 0;i < 4;++i) { if (a[i] <…
数组 Master-Mind Hints,Uva 340 题目:给定答案序列和用户猜的序列,统计有多少数字对应正确(A),有多少数字在两个序列都出现过但位置不对. 输入包括多组数据.每组输入第一行为序列长度n,第二行是答案序列,接下来是若干猜测序列.猜测序列为0时改组数据结束.n=0时输入结束. 样例输入: 4 1 3 5 5 4 3 3 5 6 5 5 1 6 1 3 5 1 3 5 5 0 0 0 0 10 1 2 2 2 4 5 6 6 6 9 1 2 3 4 5 6 7 8 9 1 1…
2.4.3 64位整数输入输出long long除了cin,cout,也可以借助于printf和scanf语句,但对应的占位符缺是和平台与编译器相关的:在Linux中,gcc很同意的用%lld:在Windows中,MinGW的gcc和VC6都需要用%I64d:但VS2008却是用%lld.2.4.4 C++中的输入输出问题是经典的“A+B”问题:输入若干对整数,输出每对之和.第1种方法: #include <cstdio> //功能和C中的stdio.h很接近,但有些许不同 using nam…
题意 给出一个v(3<=v<=1000)个点e(3<=e<=10000)条边的有向加权图,求1-v的两条不相交(除了起点和终点外没有公共点)的路径,使得权和最小. 分析 费用流的一个经典用法就是限制没有公共边边,但是这个题有个不同,这个题限制的是没有公共点.因此,我们把每个点拆出一条边来. 把2到v-1的每个结点i拆成i和i‘两个结点,中间连一条容量为1,费用为0的边.对于原图中的每一条边(a,b),连一条弧(a',b),容量为1,费用为权值然后求1到v的流量为2的最小费用流即可.…