- 博客(14)
- 收藏
- 关注
原创 算法竞赛入门经典(第2版)习题6-3 二叉树重建 UVa536
思路: 1 确定根,确定左子树,确定右子树。2 在左子树中递归。3 在右子树中递归。4 打印当前根。#include<iostream>#include<string>struct bitree{ char data; struct bitree*lchild; struct bitree*rchild;};bitree* creat(string Pre, int
2017-05-30 13:26:07 278
原创 算法竞赛入门经典(第2版)习题5-7 打印队列 UVa12100
思路:用队列queue存储set< pair< int,int > >型的数据(优先级,位置),另外将优先级存储到vector中用于进行优先级的对比。#include<iostream>#include<string>#include<vector>#include<queue>#include <functional>using namespace std;typedef pair<i
2017-05-26 14:50:42 329
转载 算法竞赛入门经典(第2版)习题5-5 复合词 UVa10391
用拆分词的思路很棒#include <iostream> #include <cstdio> #include <cstdlib> #include <string> #include <map> #define INF 1E9 using namespace std; map<string,bool> hash; string s[150000]; int ma
2017-05-26 13:28:51 375
原创 算法竞赛入门经典(第2版)习题5-6 对称轴(Symmetry) Uva1595
思路:把所有的x坐标值加起来,并除以点的数目得到对称轴,再测试每个点是否有相对称的点。 用set < pair < int,int> >存储点#include<iostream>#include <functional>#include<set>using namespace std;typedef pair<int, int> point;int main(){ set<po
2017-05-26 13:23:24 322
原创 算法竞赛入门经典(第2版)习题4-4 骰子涂色 Uva253
骰子总共三种翻转方式,每种方式转四次,总共翻转64次即是所有可能。 翻转函数把图画出并给每个面标记就很容易理解#include<iostream>using namespace std;void turnz(char*a);//骰子以z轴做90°翻转void turny(char*a);//骰子以y轴做90°翻转void turnx(char*a);//骰子以x轴做90°翻转int ma
2017-05-20 23:20:08 428 1
原创 算法竞赛入门经典(第2版)习题3-9 子序列(All in All) Uva10340
C++编写,使用了string类的find方法#include<iostream>#include<string>using namespace std;int main(){ string s = "deletealgorihm"; string t = "lgh"; int len = t.size(); int count = 0; int lo
2017-05-15 22:59:54 294
原创 算法竞赛入门经典(第2版)习题3-5 谜题(Puzzle) Uva227
C++编写#include<iostream>using namespace std;int main(){ int x = 2, y = 1; char Puzzle[5][5] = { {'T','R','G','S','J'}, {'X','D','O','K','I'}, {'M',' ','V','L','N'}
2017-05-14 22:43:43 636
原创 算法竞赛入门经典(第2版)习题3-2 分子量 Uva1586
C++编写 计算分子量(Molar Mass,UVa1587) 本题中的分子式只包含4种原子,分别为C,H,O,N,原子量分别为12.01,1.008,16.00,14.01(单位:g/mol)int main() { char Molar[20]; double count=0; cin >>Molar; int i=0; while(i
2017-05-13 23:43:47 408
原创 算法竞赛入门经典(第2版)习题3-1 Uva1585
int main(){ char a[80]={ "OXXOXXOXOXOXOXOXOXOXXOOOOXOXOXOXOOXOOXOXOXOXOXOOOOXOXOXOXOOXOXOXOXOOXOXOOOXOXOO" }; int total = 0,count = 0; for (int i = 0; i < 80; i++) { if (a[i] =
2017-05-12 21:23:21 2544
原创 算法竞赛入门经典(第2版)习题2-6
int main(){ int abc, def, ghi, i; int a[10]; memset(a, 0, sizeof(a)); for (abc = 123; abc <= 987 / 3; abc++) { def = 2 * abc; ghi = 3 * abc; a[abc % 10]++;
2017-05-12 21:22:30 319 1
原创 算法竞赛入门经典(第2版)习题2-5
int main(){ double a, b; int count = 0; int c[100] ; double Case[100] ; while (cin >> a >> b >> c[count]&&a!=0&&b!=0&&c!=0) { Case[count] = a/b; count++; }
2017-05-11 17:31:33 275
原创 算法竞赛入门经典(第2版)习题2-4
int main(){ int n, m,count=0; double Case[100] = { 0 }; while (cin >> n >> m&&n!=0&&m!=0) { if (n < m) { while((n*n)<=(m*m)) { C
2017-05-11 16:57:00 308
原创 算法竞赛入门经典(第2版)习题2-3
输入正整数,输出一个n层的倒三角形。int main(){ unsigned n; cin >> n; int j = 2 * n - 1; if (n <= 20) { for (int i = n; i >0; i--) { if (j==(2*n-1)) {
2017-05-11 16:21:58 230
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人