程序设计
warm-
学而时习之:)
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
二叉树着色游戏
题目描述 在这里插入图片描述 思路 一号玩家选择节点后,将树分成了三个部分:左子树,右子树和其父节点另外一个子树。 如果左子树节点数目(left)大于总节点数目的一半,返回true 如果右子树节点数目(right)大于总节点数目的一半,返回false 如果left+right 小于总节点数目的一半(其父节点另外一个子树节点数目大于总节点数目的一半),返回true /** * Definition for a binary tree node. * struct TreeNode { *原创 2021-08-10 14:04:36 · 320 阅读 · 0 评论 -
读取带标点的英文段落,分词、去重按字典顺序输出(C语言)
例如: 输入: I love Beijing. I Love China. Oh,Beijing is the capital of China. Do you know? Cheer up!! 输出: Beijing Cheer China Do I Love Oh capital is know love of the up you #include <stdio.h> #incl...原创 2020-01-01 15:54:11 · 561 阅读 · 0 评论 -
PAT乙级 1014福尔摩斯的约会(C语言)
到现在题目也没搞太明白,反正通过了。下面我的理解。 注意: 判断小时数:题目中说是第2对相同字符,应该是星期数后面的相同的字符,并且要满足: 是数字或则A~N之间。 如果是从头开始的第二个满足条件的字符,比如: 3485djDkxh4hhGE 2985akDfkkkkggEdsb 这两个字符串,第2个满足条件的字符是5,但小时数应该是字符E(星期数D的后一个满足条件的字符)。 #inclu...原创 2019-12-31 18:15:39 · 235 阅读 · 0 评论 -
PAT乙级 1013 数素数(C语言)
注意: 超时问题。 判断是否为素数的函数里求该数的平方根,减少时间。 #include <stdio.h> #include <stdlib.h> #include <math.h> int isPrime(int n) { int i, tmp; if(n < 2) { return 0; } tmp = (int)sqrt(n); ...原创 2019-12-31 16:30:18 · 323 阅读 · 0 评论 -
PAT乙级 1012 数字分类(C语言)
#include <stdio.h> #include <stdlib.h> int main() { int n, x, i, count=0, k = -1; int a[5] = {0, 0, 0, 0, 0}; int flag[5] = {0}; scanf("%d", &n); for(i = 0; i<n; i++) { sca...原创 2019-12-31 16:07:37 · 156 阅读 · 0 评论 -
PAT乙级 1011A+B 和 C(C语言)
不知道这个题考的知识点是什么。。。。。 #include <stdio.h> int main() { int t, i; double a, b, c; while(~scanf("%d", &t)) { for(i = 0; i < t; i++) { scanf("%lf %lf %lf", &a, &b, &c); ...原创 2019-12-31 15:39:45 · 339 阅读 · 1 评论 -
PAT乙级 1010一元多项式求导(C语言)
注意点: 只要判断第一项求导后是否为零多项式。如果是,输出0 0;否则,依次输出求导后非零多项式。 输出格式问题,最后不要带空格。 不通过可以试试这两个测试用例: 输入:2 3 0 2 0 1 输出:6 2 0 1 0 0 输入: 0 1 输出: 0 0 #include <stdio.h> int main() { int i, j; scanf("%d %d", &am...原创 2019-12-31 15:31:30 · 259 阅读 · 0 评论 -
PAT乙级 1009说反话(C语言)
解题方法就是创建一个二维字符串数组,将读取的单词保存到数组中,然后倒序输出。 经过测试,所有的测试样例,单词的数量最多为8个,单词的长度最大为10。 #include <stdio.h> #include <stdlib.h> int main() { int i, len; char str[8][10] ={'\0'}; len = 0; while(~sc...原创 2019-12-30 17:50:53 · 245 阅读 · 0 评论 -
PAT甲级 1002 A+B for Polynomials(C语言)
笨方法:创建一个结构体保存指数和系数。 测试点: 系数为0的情况。不计入项数,也不输出。 输出格式的问题 #include <stdio.h> #include <stdlib.h> #define MAX 20 typedef struct num { // n^m double n; int m; }NUM; void sort(NUM a[], int...原创 2019-12-30 17:05:45 · 225 阅读 · 0 评论 -
PAT 甲级 1001(C语言)
注意几种情况: a+b = 0 a+b = -10或-100或-1000 a+b = 1000或10000 #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int a, b, sum, group; int i, len, count = 0; char st...原创 2019-12-30 15:34:22 · 211 阅读 · 0 评论 -
PAT乙级 1008数组循环右移问题(C语言)
第一次提交测试点2没通过。 试了半天,发现是当m > n的情况没有考虑到。 所以代码加了一行m = m % n。 #include <stdio.h> #include <stdlib.h> int main() { int n, m, i; int *a = NULL; scanf("%d %d",&n, &m); a = (int *)m...原创 2019-12-30 14:43:14 · 297 阅读 · 0 评论 -
PAT 乙级 1007素数对猜想(C语言)
#include <stdio.h> #include <stdlib.h> #include <math.h> int isPrime(int n) { int i, tmp; tmp = (int)sqrt(n); for(i = 2; i <= tmp; i++) { if(n % i == 0) { return 0; ...原创 2019-12-29 19:47:36 · 253 阅读 · 0 评论 -
PAT乙级 1006换个格式输出(c语言)
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <math.h> int main() { int n, i, len, j, k; char str[40] = {'\0'}; char s[4]; \\最大是三位数,位数+1,最后一位存'\0'。 ...原创 2019-12-29 18:09:59 · 215 阅读 · 0 评论 -
PAT乙级 1005继续3n+1猜想(C语言)
#include <stdio.h> #include <stdlib.h> void bubbleSort(int *p, int n) { int i, j, tmp; for(i = 0; i < n; i++) { for(j = 0; j < n - i -1; j++) { if(p[j] < p[j+1]) { ...原创 2019-12-29 17:43:43 · 586 阅读 · 0 评论 -
PAT 乙级1004 成绩排名
#include <stdio.h> #include <stdlib.h> typedef struct info { char sname[11]; //注意是11个字符,多余的1位为'\0'。 char sno[11]; int score; }INFO; void infoSort(INFO *p, int n) { int i, j; INFO...原创 2019-12-29 17:17:16 · 109 阅读 · 0 评论 -
PAT1003 我要通过(C语言)
网上已经有很多解析了,就不废话了。 主要注意一下几点: P、A、T三个字符都要出现。(测试点2) P、T仅且出现一次。 P在T之前。 P和T之间至少有一个A。 P左边A的数量 * P和T之间A的数量 = T右边A的数量。 代码简单易懂,就是判断上面几个条件。 #include <stdio.h> int isRight(char *s) { int i = 0,j = 0, c...原创 2019-12-29 16:40:01 · 320 阅读 · 0 评论
分享