刷题
记录刷题
wyfiverson
这个作者很懒,什么都没留下…
展开
-
杭电ACM试题分类
第一篇1001 这个就不用说了吧1002 简单的大数1003 DP经典问题,最大连续子段和1004 简单题1005 找规律(循环点)1006 感觉有点BT的题,我到现在还没过1007 经典问题,最近点对问题,用分治1008 简单题1009 贪心1010 搜索题,剪枝很关键10111012 简单题1013 简单题(有个小陷阱)1014 简单题1015 可以看作搜索题吧...转载 2019-03-10 16:32:32 · 154 阅读 · 0 评论 -
18年南大考研复试机试题第二题
农夫John的奶牛跑路了。将地图视作一条数轴,John的初始位置在s而奶牛的位置在t(0<=s,t<=100000)。John可以花费一分钟的时间使自己作如下移动:1 从点x移动到点x+12 从点x移动到点x-13 从点x移动到点x*2奶牛的位置一直在点t。现在给定s,t,要求John要追上奶牛最少需要几分钟。Sample Input:5 17Sample Output:...原创 2019-03-01 20:18:44 · 693 阅读 · 0 评论 -
18年南大考研复试机试题第一题
给出一棵满二叉树的先序遍历,有两种节点:字母节点(A-Z,无重复)和空节点(#)。要求这个树的中序遍历。输出中序遍历时不需要输出#。满二叉树的层数n满足1<=n<=5。Sample Input:ABC#D#ESample Output:CBADE#include<iostream>#include<string>using namespace st...原创 2019-03-01 20:17:55 · 1235 阅读 · 2 评论 -
pat甲级1002
#include<iostream>#include<string.h>#include<math.h>using namespace std;int main(){int m,n,count=0;double d;double a[1005]={0};for(int p=0;p<2;p++){cin>>...原创 2018-12-31 16:37:05 · 227 阅读 · 0 评论 -
pta1001
1001A+B Format(20 point(s))Calculatea+band output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits).In...原创 2018-12-31 15:21:18 · 297 阅读 · 0 评论 -
acm 2044一只小蜜蜂...
有输出的位数问题,其他的话要知道算法的意思 由题可以知道f(n)=f(n-1)+f(n-2) 并且限定了只有50位,可以一一求出,再直接找数组元素就可以了#include<stdio.h> int main(){ __int64 a[51]; a[0]=0; a[1]=1; a[2]=2; a[3]=3; for(int i=4;i<51;i++原创 2017-12-15 20:22:05 · 418 阅读 · 0 评论 -
操作系统作业
2进制转换10进制有点坑== 因为我存进去是逆序求的,最后转换也得反着求#include<stdio.h>#include<math.h># define size 4096int pagesize[10]={32102,443217,6723,8985,11238,29065,234205,45812,240561,300451};int formula(int address){//公原创 2017-11-27 14:25:15 · 287 阅读 · 0 评论 -
操作系统作业3
有一个盘子,可以放5个水果(苹果or桔子)。父亲每次向盘子随机放入一个水果(苹果or桔子),父亲放入水果的次数不少于11次。儿子只吃桔子,女儿只吃苹果。请编程使用信号量机制模拟解决此进程同步问题。打印信息包括盘子的情况、调度的情况以及父亲、儿子或者女儿执行的操作。一步一步来,一切就水到渠成了#include<stdio.h>#include<time.h> #include<stdlib.h>原创 2017-10-28 10:02:58 · 1081 阅读 · 1 评论 -
操作系统作业2
请编写一个程序,模拟若干进程调度执行的情况。假设进程的状态分为执行和就绪两种。每个进程以其PCB为代表即可,无需创建真正的进程。以链表的方式组织PCB,分为三个队列: freeQueue:一个空白PCB队列 readyQueue:一个就绪队列 runningQueue:一个执行队列程序开始运行时,用户输入进程数量n,以及每个进程需要运行的时间t0/t1/…/tn。程序从空白PCB队列中取出PC原创 2017-10-18 23:42:51 · 535 阅读 · 0 评论 -
操作系统作业1
类似于写一个学生信息管理系统,里面有一些问题还没有解决,以后有时间再改一下,不过程序能把老师的要求全部跑出来,对于清内存方面还是有一些问题,这里就没贴了#include<stdio.h>#include<stdlib.h>#include<string.h>struct student{ int sno; char name[10]; int sage; int原创 2017-10-17 20:29:59 · 676 阅读 · 0 评论 -
Acm 1087 Super Jumping! Jumping! Jumping!
这道题花了不少的时间,因为走了不少的弯路,但是最终还是让我找到了那条比较好走的路。 思路:因为最大的路径可能不是最长的那一条,所以需要找出所有符合的路径。求一个数的值最大路径,从第一个开始接下去求,例如4 1 4 2 3,1的最大路径:1 4的最大路径:5 2的最大路径:3 3的最大路径:6 一步一步地算,需要满足的条件是一条路径是递增的,具体看代码#include<iostream>#原创 2017-09-14 10:01:05 · 367 阅读 · 0 评论 -
acm 数塔
dp,动态规划,一开始都不知道这是什么题目,尴尬,但是能做就行了 从最低端的小三角形开始考虑,最底层相邻两个数看作是与上面的数联合成一条小路,选择大的那个数,这样就可以淘汰一条小路线。每次都能淘汰剩下一半的路线,那一直做下去就可以找出最大的那条路线#include<iostream>using namespace std;int max(int x,int y){ if(x>y)原创 2017-09-02 10:47:28 · 373 阅读 · 0 评论 -
Can you solve this equation? acm2199
看出是用二分做的,但是一开始对于取值的范围不正确,一开始我的范围是top-low这个值<0.00001,看起来是可以的,结果对于6这个值是过不了。看了下别人的代码,就改成fun(flag)-b这个绝对值得再大于1e-5。一开始对于scanf(“%d\n”);里面的\n不是很清楚,吃了亏#include<stdio.h>#include<math.h>double fun(double x){原创 2017-06-21 18:49:31 · 416 阅读 · 0 评论 -
黑化的牛牛
一开始以为是要把一个一个的可能都用数组的形式表示出来,然后再去找重。结果一想不就是相邻两位的比较吗,发现思路是对的,然后代码就过了#include#includeint main(){int l,i,n;char a[50];gets(a);l=strlen(a);n=l;for(i=1;iif(a[i]==a[i-1])n--; }pr原创 2017-06-19 18:53:23 · 298 阅读 · 0 评论 -
黑白卡片
不知道为什么用MarkDown编辑器会显示有问题,干脆就把头文件给去掉了 思路很简单,但是我一开始也除了好多错。看来下别人的代码,顿时醒悟了。这个无非是B开头和W开头,我直接把这两种情况全列出来,然后再让测试的用例再这两种情况里面找不同,谁少我选谁。 int main(){ int l,i,n,flag1=0,flag2=0; char a[50],b[50],c[50];原创 2017-06-19 13:55:58 · 448 阅读 · 0 评论 -
问题 B: Freckles
题目描述In an episode of the Dick Van Dyke show, little Richie connects the freckles on his Dad’s back to form a picture of the Liberty Bell. Alas, one of the freckles turns out to be a scar, so his Ripl...原创 2019-02-28 20:21:27 · 422 阅读 · 2 评论 -
最短路径算法
//点到点之间的最短距离算法#include<stdio.h>#define N 100int main(){int m,n;//n代表点的个数,m代表路线的数量int a[N][N];int dist[N],f[N];//用来存储最短距离int b,c,d;scanf("%d %d",&m,&n);for(int i=1;i<=n;i++)...原创 2018-01-14 09:51:26 · 292 阅读 · 0 评论 -
问题 I: 毕业bg
题目描述每 年毕业的季节都会有大量毕业生发起狂欢,好朋友们相约吃散伙饭,网络上称为“bg”。参加不同团体的bg会有不同的感觉,我们可以用一个非负整数为每个 bg定义一个“快乐度”。现给定一个bg列表,上面列出每个bg的快乐度、持续长度、bg发起人的离校时间,请你安排一系列bg的时间使得自己可以获得最 大的快乐度。例如有4场bg:第1场快乐度为5,持续1小时,发起人必须在1小时后离开;第2场...原创 2019-03-13 19:41:54 · 281 阅读 · 0 评论 -
问题 G: 点菜问题
题目描述北大网络实验室经常有活动需要叫外买,但是每次叫外买的报销经费的总额最大为C元,有N种菜可以点,经过长时间的点菜,网络实验室对于每种菜i都有一个量化的评价分数(表示这个菜可口程度),为Vi,每种菜的价格为Pi, 问如何选择各种菜,使得在报销额度范围内能使点到的菜的总评价分数最大。注意:由于需要营养多样化,每种菜只能点一次。输入输入的第一行有两个整数C(1 <= C <= ...原创 2019-03-10 19:58:04 · 155 阅读 · 0 评论 -
问题 F: 放苹果
题目描述把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。输入第一行是测试数据的数目t(0 &lt;= t &lt;= 20)。以下每行均包含二个整数M和N,以空格分开。1&lt;=M,N&lt;=10。输出对输入的每组数据M和N,用一行输出相应的K。样例输入26 37 2样例输出74一开...原创 2019-03-10 19:32:54 · 244 阅读 · 0 评论 -
问题 D: Coincidence
题目描述Find a longest common subsequence of two strings.输入First and second line of each input case contain two strings of lowercase character a…z. There are no spaces before, inside or after the strin...原创 2019-03-09 11:55:47 · 185 阅读 · 0 评论 -
问题 C: 合唱队形
题目描述N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学不交换位置就能排成合唱队形。合唱队形是指这样的一种队形:设K位同学从左到右依次编号为1, 2, …, K,他们的身高分别为T1, T2, …, TK,则他们的身高满足T1 < T2 < … < Ti , Ti > Ti+1 > … > TK (1 <= i <=...原创 2019-03-09 11:17:44 · 1381 阅读 · 0 评论 -
问题 B: 拦截导弹
题目描述某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。输入每组输入有两行,第一行,输入雷达捕捉...原创 2019-03-09 10:15:19 · 417 阅读 · 0 评论 -
问题 C: 货币系统
题目描述母牛们不但创建了他们自己的政府而且选择了建立了自己的货币系统。[In their own rebellious way],,他们对货币的数值感到好奇。传统地,一个货币系统是由1,5,10,20 或 25,50, 和 100的单位面值组成的。母牛想知道有多少种不同的方法来用货币系统中的货币来构造一个确定的数值。举例来说, 使用一个货币系统 {1,2,5,10,…}产生 18单位面值...原创 2019-03-08 20:04:09 · 1137 阅读 · 0 评论 -
问题 B: 采药
题目描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医 师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间, 在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果...原创 2019-03-08 19:16:15 · 138 阅读 · 0 评论 -
问题 A: 装箱问题
题目描述【问题描述】有一个箱子的容量为V(V为正整数,且满足0≤V≤20000),同时有n件物品(0的体积值为正整数。要求从n件物品中,选取若干装入箱内,使箱子的剩余空间最小。输入:1行整数,第1个数表示箱子的容量,第2个数表示有n件物品,后面n个数分别表示这n件物品各自的体积。输出:1个整数,表示箱子剩余空间。【输入输出样例】输入:24 6 8 3 12 7 9 7输出:0...原创 2019-03-07 20:35:55 · 175 阅读 · 0 评论 -
问题 A: 【字符串】最长回文子串
题目描述输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。回文的含义是:正着看和倒着看相同。如abba和yyxyy。在判断回文时,应该忽略所有标点符号和空格,且忽略大小写,但输出应保持原样(在回文串的首部和尾部不要输出多余字符)。输入字符串长度不超过5000,且占据单独的一行。应该输出最长的回文串,如果有多个,输出起始位置最靠左的。输入一行字符串,字符串长度...原创 2019-03-07 19:23:56 · 433 阅读 · 1 评论 -
问题 A: 最长公共子序列
题目描述给你一个序列X和另一个序列Z,当Z中的所有元素都在X中存在,并且在X中的下标顺序是严格递增的,那么就把Z叫做X的子序列。例如:Z=<a,b,f,c>是序列X=<a,b,c,f,b,c>的一个子序列,Z中的元素在X中的下标序列为<1,2,4,6>。现给你两个序列X和Y,请问它们的最长公共子序列的长度是多少?输入输入包含多组测试数据。每组输入占一行...原创 2019-03-06 15:54:34 · 91 阅读 · 0 评论 -
问题 A: 最长上升子序列
题目描述一个数列ai如果满足条件a1 &lt; a2 &lt; … &lt; aN,那么它是一个有序的上升数列。我们取数列(a1, a2, …, aN)的任一子序列(ai1, ai2, …, aiK)使得1 &lt;= i1 &lt; i2 &lt; … &lt; iK &lt;= N。例如,数列(1, 7, 3, 5, 9, 4, 8)的有序上升子序列,像(1, 7), (3,原创 2019-03-05 20:46:50 · 207 阅读 · 0 评论 -
问题 A: 最大连续子序列
题目描述给定K个整数的序列{ N1, N2, …, NK },其任意连续子序列可表示为{ Ni, Ni+1, …, Nj },其中 1 &lt;= i &lt;= j &lt;= K。最大连续子序列是所有连续子序列中元素和最大的一个,例如给定序列{ -2, 11, -4, 13, -5, -2 },其最大连续子序列为{ 11, -4, 13 },最大和为20。现在增加一个要求,即还需要输出该子序...原创 2019-03-05 19:53:01 · 437 阅读 · 0 评论 -
问题 C: Legal or Not
题目描述ACM-DIY is a large QQ group where many excellent acmers get together. It is so harmonious that just like a big family. Every day,many “holy cows” like HH, hh, AC, ZT, lcc, BF, Qinz and so on chat...原创 2019-03-03 20:23:17 · 185 阅读 · 0 评论 -
问题 B: 确定比赛名次
题目描述有N个比赛队(1<=N<=500),编号依次为1,2,3,。。。。,N进行比赛,比赛结束后,裁判委员会要将所有参赛队伍从前往后依次排名,但现在裁判委员会不能直接获得每个队的比赛成绩,只知道每场比赛的结果,即P1赢P2,用P1,P2表示,排名时P1在P2之前。现在请你编程序确定排名。输入输入有若干组,每组中的第一行为二个数N(1<=N<=500),M;其中N表示...原创 2019-03-03 20:06:12 · 411 阅读 · 0 评论 -
问题 D: 继续畅通工程
题目描述省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。现得到城镇道路统计表,表中列出了任意两城镇间修建道路的费用,以及该道路是否已经修通的状态。现请你编写程序,计算出全省畅通需要的最低成本。输入测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( 1< N < 100 );随后的 N(N-1)...原创 2019-02-28 22:19:05 · 534 阅读 · 0 评论 -
问题 C: 畅通工程
题目描述省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可)。经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的成本。现请你编写程序,计算出全省畅通需要的最低成本。输入测试输入包含若干测试用例。每个测试用例的第1行给出评估的道路条数 N、村庄数目M (N, M < =100 );随后的 N 行对应村庄间道路...原创 2019-02-28 21:08:10 · 236 阅读 · 0 评论 -
问题 A: 还是畅通工程
题目描述某省调查乡村交通状况,得到的统计表中列出了任意两村庄间的距离。省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可),并要求铺设的公路总长度为最小。请计算最小的公路总长度。输入测试输入包含若干测试用例。每个测试用例的第1行给出村庄数目N ( &amp;amp;amp;lt; 100 );随后的N(N-1)/2行对应村庄间的距离,每行给出一对正...原创 2019-02-28 18:50:45 · 100 阅读 · 0 评论 -
华为3
在牛客上做华为机试题目,希望补补自己拙略的代码能力,里面有许多做不出来参考别人的代码 c语言#include<stdio.h>int main(){ int n,a; while(scanf("%d",&n)!=EOF){ int b[1001]={0}; for(int i=0;i<n;i++){ scanf("%d",原创 2017-10-26 21:21:45 · 189 阅读 · 0 评论 -
华为2
在牛客上做华为机试题目,希望补补自己拙略的代码能力,里面有许多做不出来参考别人的代码 javaimport java.util.Scanner;public class Main { public static void main(String[] args){ Scanner sc=new Scanner(System.in); int num=0;原创 2017-10-08 22:29:17 · 205 阅读 · 0 评论 -
华为1
在牛客上做华为机试题目,希望补补自己拙略的代码能力,里面有许多做不出来参考别人的代码 c++#include<iostream>#include<string>using namespace std;int main(){ string s; while(getline(cin,s)){ int flag=0,n=0; for(int i=s.原创 2017-10-08 10:11:17 · 355 阅读 · 0 评论