算法
输出是最好的学习
这个作者很懒,什么都没留下…
展开
-
PAT答案(换个格式输出整数)
题目链接https://www.patest.cn/contests/pat-b-practise/1006代码#include<iostream>#include<stack>using namespace std;int main() { char a[2] = {'S', 'B'}; int n, x; stack&...原创 2018-04-28 16:41:48 · 280 阅读 · 0 评论 -
PAT答案(继续(3n+1)猜想)
题目链接https://www.patest.cn/contests/pat-b-practise/1005代码#include<iostream>#include<algorithm>#include<string>#define MAX 105using namespace std;int main() { int n, ...原创 2018-04-28 16:22:06 · 1075 阅读 · 0 评论 -
PAT答案(成绩排名)
题目链接https://www.patest.cn/contests/pat-b-practise/1004代码#include<iostream>#include<string>using namespace std;typedef struct student { string name; string studentId;...原创 2018-04-28 15:37:53 · 989 阅读 · 0 评论 -
PAT答案(我要通过)
题目链接https://www.patest.cn/contests/pat-b-practise/1003代码#include<iostream>#include<string>#include<queue>using namespace std;int main() { string s1; queue<int...原创 2018-04-28 15:29:02 · 3787 阅读 · 1 评论 -
PAT答案(写出这个数)
题目链接https://www.patest.cn/contests/pat-b-practise/1002代码#include<iostream>#include<string>#include<stack>using namespace std;int main() { string s1; stack<i...原创 2018-04-27 20:57:03 · 1396 阅读 · 0 评论 -
PAT答案(害死人不偿命的(3n+1)猜想)
题目链接https://www.patest.cn/contests/pat-b-practise/1001代码#include<iostream>using namespace std;int main() { int n, t=0; cin >> n; while(n != 1) { if(n % 2 == ...原创 2018-04-27 20:34:23 · 4479 阅读 · 0 评论 -
PAT答案(旧键盘打字)
题目链接https://www.nowcoder.com/pat/6/problem/4059代码#include<iostream>#include<string>using namespace std;int main() { string s1, s2; int flag; cin >> s1 >>...原创 2018-04-27 19:44:35 · 274 阅读 · 0 评论 -
PAT答案(查验身份证)
题目链接https://www.nowcoder.com/pat/6/problem/4057代码#include<iostream>#include<string>#define MAX 105using namespace std;int main() { int n, k=0; string temp; string ...原创 2018-04-27 18:00:47 · 993 阅读 · 0 评论 -
PAT答案(科学计数法)
题目链接https://www.nowcoder.com/pat/6/problem/4050代码#include<iostream>#include<math.h>#include<string>#include<queue>#include<stack>using namespace std;int main...原创 2018-04-26 21:02:17 · 596 阅读 · 1 评论 -
PAT答案(打印沙漏)
题目链接https://www.nowcoder.com/pat/6/problem/4053代码#include<iostream>#include<math.h>using namespace std;int main() { int n, m, q, t = 0; char c; cin >> n >&...原创 2018-04-26 19:57:46 · 816 阅读 · 0 评论 -
PAT答案(程序运行时间)
题目链接https://www.nowcoder.com/pat/6/problem/4052代码#include<iostream>#include<math.h>using namespace std;int main() { int c1, c2; int hour, minute, second, totalSecond; ...原创 2018-04-26 19:20:07 · 658 阅读 · 0 评论 -
PAT答案(旧键盘)
题目链接https://www.nowcoder.com/pat/6/problem/4055代码#include<iostream>#include<string.h>#include<string>#define MAX 80using namespace std;int main() { string s1, s2; ...原创 2018-04-26 17:08:02 · 296 阅读 · 0 评论 -
PAT答案(完美数列)
题目链接https://www.nowcoder.com/pat/6/problem/4056思路分析对于这道题目,主要是要找到最长的长度,我们先循环一次找到一个最长的长度,接下来就是一个比较问题了,发现其他的长度是否比目前的长度更长,如果是,则替换。代码#include<iostream>#include<string>#include<...原创 2018-04-08 12:28:19 · 524 阅读 · 0 评论 -
PAT答案(挖掘机技术哪家强)
题目链接https://www.nowcoder.com/pat/6/problem/4058代码#include<iostream>#include<string.h>#define MAX 100005using namespace std;int main() { int n, t, k; int index, max_value...原创 2018-04-07 18:02:47 · 506 阅读 · 0 评论 -
PAT答案(跟奥巴马一起编程)
题目链接https://www.nowcoder.com/pat/6/problem/4062代码#include<iostream>#include<math.h>using namespace std;int main() { int n; char c; cin >> n >> c; in...原创 2018-04-07 17:42:54 · 1403 阅读 · 0 评论 -
PAT答案(统计同成绩学生)
题目链接https://www.nowcoder.com/pat/6/problem/4064代码#include<iostream>#include<string.h>#define MAX 100005using namespace std;int main() { int m,n,t,k=0; int a[MAX]; ...原创 2018-04-07 17:23:21 · 898 阅读 · 0 评论 -
PAT答案(到底买不买)
题目链接https://www.nowcoder.com/pat/6/problem/4065代码#include<iostream>#include<string.h>#define MAX 1005using namespace std;int main() { char a[MAX]; char answer[MAX]; ...原创 2018-04-07 16:41:40 · 493 阅读 · 0 评论 -
PAT答案(组个最小数)
题目链接https://www.nowcoder.com/pat/6/problem/4049代码#include<iostream>#include<algorithm>#include<string.h>#include<vector>using namespace std;int main() { vector&l...原创 2018-04-07 15:38:28 · 216 阅读 · 0 评论 -
PAT答案(D进制的A+B)
题目链接https://www.nowcoder.com/pat/6/problem/4048代码#include<iostream>#include<vector>using namespace std;int main() { int m,n,k; vector<int> result; scanf("%d%d%d...原创 2018-04-07 15:06:18 · 352 阅读 · 0 评论 -
PAT答案(个位数统计)
题目链接https://www.nowcoder.com/pat/6/problem/4047代码#include<iostream>#include<string.h>#define MAX 10005using namespace std;int main() { char a[MAX]; int b[10]; memset...原创 2018-04-07 14:51:12 · 227 阅读 · 0 评论 -
PAT答案(数字黑洞)
题目链接https://www.nowcoder.com/pat/6/problem/4045代码#include<iostream>#include<math.h>#include<algorithm>#include<iomanip>#include<string.h>#define LENGTH 4usi...原创 2018-04-07 14:34:50 · 418 阅读 · 0 评论 -
PAT答案(锤子剪刀布)
题目链接https://www.nowcoder.com/pat/6/problem/4044代码#include<iostream>#include<string.h>#include<algorithm>using namespace std;#define MAX 105typedef struct Game{ char o...原创 2018-04-07 13:44:50 · 583 阅读 · 0 评论 -
PAT答案(A除以B)
题目链接https://www.nowcoder.com/pat/6/problem/4043代码#include<stdio.h>#include<string.h>#define MAX 1005int main() { char a[MAX]; char answer[MAX]; int n, k; int cur...原创 2018-04-06 15:20:44 · 798 阅读 · 3 评论 -
PAT答案(部分A+B)
题目链接https://www.nowcoder.com/pat/6/problem/4042代码#include<stdio.h>#include<math.h>#define MAX 12int main() { char A[MAX]; char B[MAX]; int Da,Db; int count1=0, cou...原创 2018-04-06 14:47:06 · 882 阅读 · 0 评论 -
PAT答案(福尔摩斯的约会)
题目链接https://www.nowcoder.com/pat/6/problem/4040代码#include<stdio.h>#define MAX 60int main() { char a[MAX]; char b[MAX]; char c[MAX]; char d[MAX]; char answer[2]; i...原创 2018-04-06 12:31:43 · 900 阅读 · 0 评论 -
PAT答案(素数和)
题目链接https://www.nowcoder.com/pat/6/problem/4079代码#include<stdio.h>#include<math.h>int main() { int m, n; scanf("%d%d", &m,&n); int t = 1; int i=2; int c...原创 2018-04-06 11:07:29 · 155 阅读 · 0 评论 -
PAT答案(数字分类)
题目链接https://www.nowcoder.com/pat/6/problem/4078代码#include<stdio.h>#define MAX 1000int main() { int N; int a[MAX]; //这里采用memset编译会失败 int b[5] = {0, 0, 0, 0, 0}; scanf(...原创 2018-04-06 01:57:24 · 328 阅读 · 0 评论 -
PAT答案(A+B和C)
题目链接https://www.nowcoder.com/pat/6/problem/4077代码#include<stdio.h>int main() { int T; scanf("%d", &T); for(int i=0; i<T; i++) { long A,B,C; scanf("%ld...原创 2018-04-06 01:54:51 · 874 阅读 · 0 评论 -
迪杰特斯拉算法求最短路径
前言:通过JavaScript实现该算法,并求出初始点到各个点的最短路径<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>迪杰特斯拉算法</title></head><body> <script> //说明 //@xiaoD //计算第原创 2017-12-11 08:45:45 · 1072 阅读 · 0 评论 -
开灯问题
前言:对于算法这个东西,学习过和没有学习过写出来的代码相差很大,虽然最后都实现了相同的结果,但是时间复杂度和代码量都有很大的区别,所以不管干什么算法还是不可少的,特别是对于热爱数学的同学,哈哈开灯问题描述:开灯问题,有n盏灯,编号为1~n。第一个人把所有灯都打开,第二个人按下所有编号为2的倍数的开关(这些灯将被关掉),第三个人按下所有编号为3的倍数的开关(其中关掉的灯将被打开,开着的灯...原创 2018-03-16 00:54:49 · 289 阅读 · 0 评论 -
古老的密码
前言之所以自己写博客,除了总结自己的学习,另外就是发现网上的答案太千篇一律了,大多数人都是直接粘贴复制。问题描述古罗马帝国与各部门有一个强有力的政府系统,包括一个秘密服务部门。重要的文件以加密的形式发送防止窃听。在那个时代最流行的密码被称为替代密码和置换密码。例如,应用替代密码,改变所有字母“A”到“Y”字母表中的下一个字母(注:“Z”变成“A”),如:“VICTORIOUS”得到...原创 2018-03-30 16:55:02 · 2622 阅读 · 2 评论 -
大理石在哪儿
前言最近正值清明节放假,自己花时间刷了一些PAT,感觉很不错。问题描述现有N个大理石,每个大理石上写了一个非负整数、首先把各数从小到大排序;然后回答Q个问题。每个问题问是否有一个大理石写着某个整数x,如果是,还要回答哪个大理石上写着x。排序后的大理石从左到右编号为1~N。 输入大理石数量和需要回答问题数量,然后输入大理石上的每个非负整数,接着输入x样例输入:4 1 2 ...原创 2018-04-07 22:50:13 · 1187 阅读 · 0 评论 -
安迪的第一个字典
前言这个算法主要是介绍set,set最大的一个特点就是具有自动排序功能问题描述输入一个文本,找出所有不同的单词(连续的字母序列),按字典序从小到大输出。单词不区分大小写样例输入Adventures in Disneyland Two blondes were going to Disneyland when they came to a fork in the road. ...原创 2018-04-08 00:00:17 · 959 阅读 · 0 评论 -
蛇形填数
前言有趣的算法还是不能落下的,今天就来聊聊蛇形填数蛇形填数问题描述输入 直接输入方阵的维数,即n的值。(n<=100) 输出 输出结果是蛇形方陈。样例输入3样例输出7 8 16 9 25 4 3算法思路第一次拿到这个题目的时候,想着用对称矩阵来做,但是看了一下发现是不可行的。根据蛇形可知,我们需要根据下、左、上、右四个方向进行循环。在循环的时候...原创 2018-03-28 00:20:52 · 149 阅读 · 0 评论 -
求解最小生成元
前言因为看着刘汝佳的算法书学习的算法,今天聊聊最小生成元,关于这一点我觉得书上的方法有些不妥,因为就拿出来说说,这个算法相对还是比较简单的。最小生成元问题描述如果x加上x的各个位数字之和得到y,就说x是y的生成元;给出n,(1<=n<=100000),求最小生成元。无解输出0。例如,n=216,121,2005时的解分别为198 , 0, 1979。算法思路1、如果...原创 2018-03-28 17:49:37 · 4983 阅读 · 2 评论 -
筷子手游戏
前言今天女朋友告诉我熬夜会让大脑积累很多垃圾,让我不要熬夜,防止老年痴呆,今天早点弄完,毕竟昨天2点才睡问题描述计算机想一个单词让你猜,你每次可以猜一个字母。 如果单词里有那个字母,所有该字母会显示出来;如果没有那个字母,则计算机会下面的“刽子手”画上填一笔。 这幅画一共需要7笔就能完成,因此你最多只能错6次。 注意,猜一个已经猜过的字母也算错。 在本题中,你的任务是编写一个“...原创 2018-04-04 00:31:40 · 345 阅读 · 0 评论 -
环状序列
前言没什么好说的了,哈哈,现在快凌晨一点了,为了晚上睡觉不梦见做题,把这个问题还是解决了环状序列问题描述长度为n的环状串有n种表示法,分别为某个位置开始顺时针得到。CGAGTCAGCT,GAGTCAGCTC,AGTCAGCTCG等。在这些表示法中,字典序最小的称为“最小表示”。输入一个长度为n(n<=100)的环状DNA串(只包含A、C、G、T这4种字符)的一种表示法,你的任务是...原创 2018-03-29 01:08:55 · 2184 阅读 · 0 评论 -
救济金发放
前言这个问题琢磨了挺长时间,发现里面有很多需要考虑和注意的问题描述n(n<20)个人站成一圈,逆时针编号为1~n。有两个官员,A从1开始逆时针数,B从n开始顺时针数。在每一轮中,官员A数k个就停下来,官员B数m个就停下来(注意有可能两个官员停在同一个人上)。接下来被官员选中的人(1个或者2个)离开队伍。输入n,k,m输出每轮里被选中的人的编号(如果有两个人,先输出被A选中的)...原创 2018-04-05 22:43:19 · 214 阅读 · 1 评论 -
整数规划问题求解算法
前言:通过JavaScript实现整数规划问题。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>整数规划</title></head><body> <script> //说明: //1. 约束条件必须全部转化为小于等于 //价值系数原创 2017-12-10 15:48:10 · 8626 阅读 · 0 评论