PAT Practice
HarvestWu
电子科技大学硕士在读
展开
-
PAT1001 A+B Format (20)题解
将整型数采用取余方式得到每一位数值,而后逆序输出。注意每三位输出一个',',且注意和为'0'的情况。/*Created by HarvestWu on 2018/4/9.*/#include <iostream>#include <cstdio>using namespace std;int main(){ int a, b, sum, count = 0...原创 2018-04-09 22:51:08 · 132 阅读 · 0 评论 -
PAT 数组元素循环右移问题(20 分)(题解)
直接控制打印就OK,注意循环右移的M可能大于N,因此需要对N取余。#include <stdio.h>#include <stdlib.h>#define MAX 105/*Created by HarvestWu on 2018/4/28.*/int num[MAX];int main(){ int N, M, flag = 0; scanf("%...原创 2018-04-28 23:38:56 · 508 阅读 · 0 评论 -
PAT 素数对猜想(20 分)(题解)
这里采取了牺牲空间、降低时间复杂度的筛选法。#include <stdio.h>#include <stdlib.h>#define MAX 100005/*Created by HarvestWu on 2018/4/28.*/int isPrime[MAX] = { 0 }; //下标的值是否_素数(用于判断给定数n是不是素数)int prime[MA...原创 2018-04-28 23:24:49 · 222 阅读 · 0 评论 -
PAT 打印沙漏(20 分)(题解)
算出行数后直接分上下两部分控制打印注意右侧不用打印空格,否则格式错误。#include <stdlib.h>#include <stdio.h>#include <math.h>/*Created by HarvestWu on 2018/04/27.*/using namespace std;int main(){ int N,count,a...原创 2018-04-27 23:54:51 · 1759 阅读 · 1 评论 -
PAT Pop Sequence(25 分)(题解)
通过判定当前出栈的元素及其之前未出栈元素的个数和是否大于栈长度,以及当前出栈元素是否已在先前出栈来判定是否正确。#include <stdlib.h>#include <stdio.h>#include <stack>/*Created by HarvestWu on 2018/04/27.*//*通过判定当前出栈的元素及其之前未出栈元素的个数和是...原创 2018-04-27 22:59:08 · 312 阅读 · 0 评论 -
PAT 一元多项式的乘法与加法运算(20 分)(题解)
以数组下标作为指数开辟数组。#include <stdlib.h>#include <stdio.h>/*Created by HarvestWu on 2018/04/27.*///以数组下标作为指数开辟数组int main(){ int c[1005] = { 0 };//求和 int t[1005] = { 0 };//存第一个原始值 int ...原创 2018-04-27 21:05:12 · 1192 阅读 · 1 评论 -
PAT Maximum Subsequence Sum(25 分)(题解)
关键在于记录始末值以及没有非负数时的处理。#include <iostream>#include <stdio.h>/*Created by HarvestWu on 2018/04/27.*/int main(){ int n;//序列数据量 int positiveFlag = 0;//记录是否有非负数 int firstFlag = 1;//记录是...原创 2018-04-27 19:04:03 · 203 阅读 · 0 评论 -
PAT 最大子列和问题(20 分)(题解)
#include <iostream>#include <stdio.h>/*Created by HarvestWu on 2018/04/27.*/int main(){ int n, t, sum = 0, max = 0; scanf("%d", &n); for (int i = 0; i < n; i++) { scanf(...原创 2018-04-27 17:29:12 · 374 阅读 · 0 评论 -
PAT 1054. The Dominant Color (20)题解
求出现次数超过一半的元素,采用moore's voting算法.#include <stdio.h>/*Created by HarvestWu on 2018/4/25.*/int main(){ int m ,n; scanf("%d %d", &m, &n); int count = 0, t = -1, a; for (int i = 0; i...原创 2018-04-25 11:46:17 · 177 阅读 · 0 评论 -
PAT 1050. String Subtraction (20)题解
#include <stdio.h>#include <string.h>/*Created by HarvestWu on 2018/4/24.*/int main(){ char a[10001]; char b[10001]; bool f[128] = {false}; gets(a); gets(b); for (int i = 0; i ...原创 2018-04-24 23:46:56 · 130 阅读 · 0 评论 -
PAT Shuffling Machine(20 分)(题解)
题意很简单,就是按照给定的序列order[],将第i个位置的牌移到第order[i]位置.注意多次洗牌需要保留上次的顺序基础上进行,不能破坏。#include <stdio.h>#include <math.h>#include <iostream>#include <string.h>/*Created by HarvestWu on 2...原创 2018-05-01 00:11:03 · 185 阅读 · 0 评论 -
PAT 1084. Broken Keyboard (20)题解
注意不要重复输出,且小写需转为大写。import java.util.Scanner;/**Created by HarvestWu on 2018/4/22.*/public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); ...原创 2018-04-22 23:26:40 · 234 阅读 · 0 评论 -
PAT 1031. Hello World for U (20)题解
注意先根据约束条件求出行数n1与列数n2,然后根据相应坐标的规律输出即可。import java.util.Scanner;/**Created by HarvestWu on 2018/4/22.*/public class Main { public static void main(String[] args) { Scanner in = new Sca...原创 2018-04-22 23:08:15 · 165 阅读 · 0 评论 -
PAT 1058. A+B in Hogwarts (20)题解
注意格式化接收输入以及进位的处理。#include <stdio.h>/*Created by HarvestWu on 2018/4/22.*/int main(){ int a[3], b[3], k, s; scanf("%d.%d.%d", &a[0], &a[1], &a[2]); scanf("%d.%d.%d", &b[0...原创 2018-04-22 22:43:45 · 124 阅读 · 0 评论 -
PAT 1065. A+B and C (64bit) (20)题解
此题主要考虑数据范围的问题,用java大数可直接解决。import java.math.BigInteger;import java.util.Scanner;/**Created by HarvestWu on 2018/4/22. */public class Main { public static void main(String[] args) { ...原创 2018-04-22 22:12:19 · 158 阅读 · 0 评论 -
PAT 1008. Elevator (20)题解
/*Created by HarvestWu on 2018/4/10.*/#include <iostream>#include <cstdio>#include <cstring>using namespace std;int main(){ int n, sum = 0, floorNow = 0, fl; cin >> ...原创 2018-04-10 23:35:22 · 207 阅读 · 0 评论 -
PAT 1005 Spell It Right (20)题解
注意和为0的情况。注意每两个单词之间空格,末尾没有空格。/*Created by HarvestWu on 2018/4/10.*/#include <iostream>#include <cstdio>#include <cstring>using namespace std;char s[10][10] = { "zero", "one", "...原创 2018-04-10 23:17:21 · 164 阅读 · 0 评论 -
PAT 1002 A+B for Polynomials (25)题解
注意最末尾没有空格。注意值保留一位小数。注意排除求和后为0的。/*Created by HarvestWu on 2018/4/9.*/#include <iostream>#include <cstdio>using namespace std;double c[1005] = { 0 };double r[22][2];int main(){ in...原创 2018-04-09 23:57:14 · 144 阅读 · 0 评论 -
PAT Have Fun with Numbers(20 分)(题解)
这里采用字符形式处理,但需要注意最后一个进位值不为0的情况。另外注意题目不仅要求出现的数字一样,还要求出现的次数一样。#include <stdio.h>#include <stdlib.h>#include <string.h>/*Created by HarvestWu on 2018/4/29.*/int main(){ char...原创 2018-04-29 00:24:49 · 383 阅读 · 0 评论