自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 PTA甲级-1107

并查集#include <iostream>#include <vector>#include <set>#include <stdio.h>#include <algorithm>using namespace std;int num;int cluster[1001]= {0};int ans[1001]= {0...

2018-09-03 17:00:53 399

原创 PTA甲级-1102

树的存储和层次中序遍历#include <iostream>#include <vector>#include <queue>#include <stdio.h>using namespace std;int num;int last;struct Node{ int data; bool root; N...

2018-09-02 16:44:53 341

原创 PTA甲级-1091

广度优先遍历(bfs)#include <iostream>#include <stdio.h>#include <queue>using namespace std;int M,N,L,T;int m[1287][129][61];bool visit[1287][129][61]={0};int ans;struct axe{ ...

2018-09-01 16:38:59 393

原创 PTA甲级-1086

栈的入栈出栈过程可以唯一描绘一棵二叉树;入栈顺序是先序遍历顺序,出栈顺序是中序遍历顺序;然后根据先序遍历序列和后序遍历序列求出后序遍历序列(该过程可用栈来存结果)。#include <iostream>#include <stack>#include <vector>#include <stdio.h>using namespa...

2018-09-01 16:34:09 410

原创 PTA甲级-1056

队列模拟#include <iostream>#include <vector>#include <queue>#include <algorithm>#include <stdio.h>using namespace std;int num;int group;struct Mouse{ int wei...

2018-08-31 15:55:10 401

原创 浙大PAT甲级-1023

比较简单#include <iostream>#include <vector>#include <algorithm>#include <string>using namespace std;int main(){ int i; vector<int> n,n2; string c; cin...

2018-05-07 11:17:27 271

原创 浙大PAT甲级-1022

关键点:(1)cin输入并没有将换行符输入所以后面如果紧接着getline(cin,str)需先输入完换行符(2)ID打印注意前面补零(%07d)(否则后面两个测试点过不去)#include <iostream>#include <vector>#include <stdio.h>#include <string>#include <a...

2018-05-06 23:39:55 487

原创 浙大PAT甲级-1021

还是看了凌大佬的博客才全部ac的(https://blog.csdn.net/iaccepted/article/details/20454519)#include <iostream>#include <vector>#include <stdio.h>#include <algorithm>using namespace std;in...

2018-05-05 23:27:07 497

原创 浙大PAT甲级-1018

段错误一般是由于你分配的数组或结构体数目不够,当然也有其他的一些原因。题设的要求是修正最短路径上的所有点,实际上必须严格遵循访问顺序修改每个点的权值(eg:要依次修改权值分别为3,10的两个点,必须send2back5而非简单地back3),亦即到达目标点sp后的回程是不能修改的。(以上摘抄的)#include <iostream>#include <vector>#i...

2018-05-04 17:01:06 668

原创 浙大PAT甲级-1016

Phone Bills1.更改文件输入输出方式:freopen("input.txt","r",stdin);freopen("output.txt","w",stdout);******//中间代码正常cin,coutfclose(stdin);fclose(stdout);2.vector删除某一项:删除v[i]:v.erase(v.begin()+i);【注】:删除某项后其后面的项会自动向前...

2018-04-23 10:40:09 784

原创 浙大PAT甲级-1027

简单没人看的(内部错误很可能是编译器选错了)#include <iostream>using namespace std;void func(int a){ int b = a/13; int c = a%13; if(b<10) cout<<b; else if(b==10) cout<&...

2018-04-06 17:51:13 254

原创 浙大PAT甲级-1017

银行队列:(却没用到队列)#include <iostream>#include <string>#include <algorithm>#include <vector>#include <stdlib.h>#include <stdio.h>using namespace std;int n, k;vect...

2018-04-03 17:49:28 533

原创 浙大PAT甲级-1048

思路:(1)先将所有硬币排序(sort())。(2)将集合值从小到大赋值v1,寻找v2;注意用二分搜索找v2,否则会超时。#include #include #include using namespace std;int N,M;vector coin;int main(){ int i; cin>>N>>M; for(i=0;i<N;i++

2017-08-24 13:32:57 404

原创 浙大PAT甲级-1061

字符串处理关键是理解题意:(1)找出前两个字符串中第一个相同的大写字母(注意是逐个比较,即对应的位置相同),范围是‘A’ ~ ‘G’。(2)找出前两个字符串中第二个相同的大写字母或者数字,范围是’A‘~'N' 或者 '0' ~ '9'。(3)找出后两个字符串中第一个相同的字母(区不区别大小写好像都行),记录下其出现的位置。#include #include #inclu

2017-08-23 22:10:34 469

原创 浙大PAT甲级-1032

找公共后缀关键点:-map的使用#include #include #include #include using namespace std;int main(){ map w; int w1,w2,n,i; char c; cin>>w1>>w2>>n; i=n; while(i--){ int a,b;

2017-07-11 16:35:50 336

原创 浙大PAT甲级-1031

打印图案题#include #include using namespace std;void printspace(int n){ for(int i=0;i<n;i++) cout<<" ";}int main(){ string s; int n1,n2,n3,N; cin>>s; N=s.length();

2017-07-11 13:08:22 404

原创 浙大PAT甲级-1030

图的搜索(与1003类似)-dfs#include #include using namespace std;int n,m,s,d,cnt=0;int Dist[500][500]={0};int Cost[500][500];int mdist=INT_MAX, mcost=INT_MAX;int path[500];int mpath[500];bool visi

2017-07-11 11:53:43 328

原创 浙大PAT甲级-1029

寻找两条序列的中位数一开始直接用库里的sort好像超时最后改为并归排序(复杂度只有n)#include #include #include using namespace std;int n1,n2;int main(){ int i; long x; cin>>n1; vector seqa; for(i=0;i<n1;i++)

2017-07-10 23:00:27 467

原创 浙大PAT甲级-1028

排序题这道题不难,不过学到了不少实用性东西:-sort(vec.begin(),vec.end(),comparsion);-strcmp(const *char a,const *char b);(相当于a-b);-结构体;-printf("%06d%s",...,..).#include #include #include #include #include

2017-07-10 10:08:26 356

原创 浙大PAT甲级-1020

二叉树的后缀,中缀和层次表示已知后缀,中缀,求其层次解决方法:递归#include #include using namespace std;int n;vector level[31];int num[31]={0};int post[30]={0}, in[30]={0};void pre(int post1,int post2,int in1,int in2,

2017-07-05 17:21:03 357

原创 浙大PAT甲级-1019

回文数 简单题#include #includeusing namespace std;int main(){ int n,b,i,cnt=0; cin>>n>>b; vector nb; i=n; if(i==0){ cnt=1; nb.push_back(0); } while(i>0){

2017-07-04 19:02:18 397

原创 浙大PAT甲级-1013

网上说这是在考查并查集的相关算法而我是用dfs暴力解决的(差点超时)int isConnect(){ int repair=0; for(int i=1;i<=n;i++){ if(i!=c&&connect[i]==0) repair++; dfs(i); } return repair-1;}--

2017-07-04 12:39:42 305

原创 浙大PAT甲级-1014

这道题的量还是蛮大的没用到什么技巧性东西#include using namespace std;int n,m,k,q;int timec[1001]={0};//每个customer的业务时间int query[1001]={0};int starttime[1001]={0};//每个customer开始业务的时间int endtime[1001]={0};//每个c

2017-07-03 23:50:44 291

原创 浙大PAT甲级-1015

prime:素数;1不是素数也不是合数。#include #include using namespace std;int num;bool isPrime(int a){ if(a==1) return false; for(int i=2;i<a;i++) if(a%i==0) return false;

2017-07-03 20:11:02 304

原创 浙大PAT甲级-1012

这题没什么意思#include #include using namespace std;int main(){ vector id, idc; vector C, M, E, A, ranks; int n,m,i; cin>>n>>m; i=n; while(i--){ string ids; int

2017-07-01 20:28:58 509

原创 浙大PAT甲级-1011

小学生算术题#include #include using namespace std;void print(int i){ if(i==0) cout<<"W"; else if(i==1) cout<<"T"; else cout<<"L";}int main(){ double f[3],s[3

2017-07-01 12:03:55 401

原创 浙大PAT甲级-1010

Radix这道题能完全ac真的很难我是参考这篇(http://blog.csdn.net/matrix_reloaded/article/details/35880933)慢慢调出来的,他说的注意概括的比较好,我不做赘述,就强调一点(不是二分搜索):3.算法剪枝(3)对应的函数就是cmp()。这道题也让我认识到点改进算法的意义了。#include #include #inclu

2017-06-30 23:54:42 344

原创 浙大PAT甲级-1009

多项式乘法关键点:-用二维数组存多项式-合并指数相同的项-插入排序调整项的顺序#include #include using namespace std;int main(){ double a[10][2], b[10][2], ab[100][2]; int n, m, i, cnt=0; cin>>n; for(i=0;i<n;i++

2017-06-29 11:18:54 355

原创 浙大PAT甲级-1008

小学生算术题#include using namespace std;int main(){ int n, i, time=0; int a=0, b; cin>>n; i=n; while(i--){ cin>>b; if(b>a){ time+=(b-a)*6; }else

2017-06-28 16:23:15 301

原创 浙大PAT甲级-1007

最大子段和问题

2017-06-28 12:42:34 357

原创 浙大PAT甲级-1006

比较简单关键点:-vector的用法(可参考http://www.cnblogs.com/wang7/archive/2012/04/27/2474138.html)#include #include #include using namespace std;int main(){ int m, i, firstin, lastout; cin>>m;

2017-06-28 10:47:49 421

原创 浙大PAT甲级-1005

水题。关键点:-string处理(string是个数组,length函数,EOF结束...)#include #include using namespace std;void print(int n){ switch(n){ case 0:cout<<"zero"; break; case 1:cout<<"one";

2017-06-03 22:29:24 366

原创 浙大PAT甲级-1004

代码有点乱,自己都懒得再看了。关键点:-用二维数组存储树的节点广度遍历,思路应该比较简单#include using namespace std;int tree[100][100];int visit[100];void init(int n){ for(int i=1; i<=n; i++) { visit[i]=0; f

2017-06-03 00:05:14 304

原创 浙大PAT甲级-1003

第一次着手解决这类题,感觉思想很简单,但却无从下手,主要参考这篇博客(http://blog.csdn.net/iaccepted/article/details/21451949)写的值得学习的地方:-图用一个二维数组存储-dfs函数的大概模式(判断是否到末节点,剪枝,递归调用......)#include #include using namespace std;cons

2017-06-01 21:45:56 687

原创 浙大PAT甲级-1002

这道题是大一的时候就做过的,当时刚学运算符重载。现在我用的是链表来做的,也算是复习一下快忘光的数据结构吧。#include #includeusing namespace std;//节点(多项式的项)struct listNode{ int exp; double coe; listNode *link; listNode(){} listNode(int e, double

2017-05-29 21:11:10 578

原创 浙大PAT甲级-1001

简单水题,直接贴代码(c++):#include #include using namespace std;int main(int argc, char *argv[]){ int a,b,c; int x[7]; while(cin>>a>>b){ c=a+b; int i; for(i=0;i<7;i++){ x[i]=(int)c/pow(10,(6-

2017-05-29 21:03:14 455

原创 第二章 递归与分治策略(排列的字典序问题)

一. 递归 1.概念 直接或间接地调用自身的算法。用函数自身给出定义的函数称为递归函数。 2.说明 (1)每个递归函数都必须有非递归定义的初始值,否则,递归函数就无法计算。 (2)递归式的主要表达式是用较小自变量的函数值来表示较大自变量的函数值。 3°.一种特殊的递归函数:双递归函数(一个函数及他的一个变量由函数自身定义

2017-04-22 17:36:34 2568 1

原创 第一章 算法概述(字典序问题)

这里列了五个方面的内容,应该不算是对算法的概述,只能说是学习算法你一定要知道的东西。一. 算法的概念             算法是指解决问题的一种方法或一个过程。算法是由若干条指令组成的有穷序列。             算法具有以下四个性质:            (1)输入;            (2)输出;            (3)确定性;

2017-04-16 15:49:55 1215

原创 杭电acm-1005

杭电1005题题目:Number SequenceProblem DescriptionA number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.Given A, B, and n, you

2017-02-13 14:08:26 435

原创 数据结构学习网站

http://www.visualgo.net/(形象的展示了一些算法过程,易理解)

2017-01-23 18:43:31 363

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除