OJ
handsome_ZHANG
因为梦想,所以相信
展开
-
524. 通过删除字母匹配到字典里最长单词
题目:给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。示例 1:输入:s = "abpcplea", d = ["ale","apple","monkey","plea"]输出:"apple"示例 2:输入:s = "abpcplea", d = ["a","b","c"]输出:"a"说明:所有输入的字符串只包含小写字母。字典的大原创 2020-05-13 23:33:24 · 268 阅读 · 0 评论 -
PAT基础题 5-2 然后是几点
有时候人们用四位数字表示一个时间,比如1106表示11点零6分。现在,你的程序要根据起始时间和流逝的时间计算出终止时间。 读入两个数字,第一个数字以这样的四位数字表示当前时间,第二个数字表示分钟数,计算当前时间经过那么多分钟后是几点,结果也表示为四位数字。当小时为个位数时,没有前导的零,即5点30分表示为530。注意,第二个数字表示的分钟数可能超过60,也可能是负数。 输入格式: 输入在一行中原创 2017-08-10 16:41:28 · 644 阅读 · 0 评论 -
PAT基础题 4-13 折半查找
给一个严格递增数列,函数int binSearch(SeqList T, KeyType k)用来二分地查找k在数列中的位置。 函数接口定义: int binSearch(SeqList T, KeyType k) 其中T是有序表,k是查找的值。裁判测试程序样例:#include <iostream>using namespace std;#define MAXLEN 50typedef原创 2017-08-10 17:59:21 · 627 阅读 · 0 评论 -
一个C语言输入输出细节引发的灾难
1.问题引出:问题 E: 例题3-5 求一元二次方程的根 题目描述 求一元二次方程ax2+bx+c=0的根,三个系数a, b, c由键盘输入,且a不能为0,且保证b2-4ac>0。 程序中所涉及的变量均为double类型。 输入 以空格分隔的一元二次方程的三个系数,双精度double类型 输出 分行输出两个根如下(注意末尾的换行): r1=第一个根 r2=第二个根 结果输出时,宽原创 2017-09-10 18:46:10 · 736 阅读 · 0 评论 -
【转】并查集算法和路径压缩
并查集是我暑假从高手那里学到的一招,觉得真是太精妙的设计了。以前我无法解决的一类问题竟然可以用如此简单高效的方法搞定。不分享出来真是对不起party了。(party:我靠,关我嘛事啊?我跟你很熟么?) 来看一个实例,杭电1232畅通工程:畅通工程Problem Description某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全转载 2017-09-08 17:24:50 · 587 阅读 · 0 评论 -
PAT基础题 4-6 求单链表结点的阶乘和
本题要求实现一个函数,求单链表L结点的阶乘和。这里默认所有结点的值非负,且题目保证结果在int范围内。 函数接口定义: int FactorialSum( List L ); 其中单链表List的定义如下: typedef struct Node *PtrToNode; struct Node { int Data; /* 存储结点数据 */ PtrToNode Nex原创 2017-08-05 23:50:45 · 349 阅读 · 0 评论 -
PAT-B 1028 人口普查 (20 分)
1.0输入的所有数据均合法但不合理的情况, 输出0;2.结构体没有指针可以直接复制3.用string和cin,cout来输入输出最后一个测试点会超时4.用一个for循环边输入边判断条件是否符合...原创 2019-01-25 23:11:53 · 124 阅读 · 0 评论 -
PAT-B 1014 福尔摩斯的约会 (20 分)
大侦探福尔摩斯接到一张奇怪的字条:我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间星期四 14:04,因为前面两字符串中第 1 对相同的大写英文字母(大小写有区分)是第 4 个字母 D,代表星期四;第 2 对相同的字符是 E ,那是第 5 个英文字母,代...原创 2019-02-01 12:33:12 · 158 阅读 · 0 评论 -
PAT-B 1021 个位数统计 (15 分)
给定一个 k 位整数 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1&gt;0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。输入格式:每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。输出格式:对 N 中...原创 2019-01-28 10:58:07 · 223 阅读 · 0 评论 -
PAT-B 1015 德才论 (25 分)
宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式:输入第一行给出 3 个正整数,分别为:N(≤105),即考生总数;L(≥60),为录取最低分数线,即德分和才分均不低于 L 的考生...原创 2019-02-11 12:30:49 · 227 阅读 · 0 评论 -
携程后台开发笔试第二题
第二题题目是按k组反转链表,但是他没给链表结构,所以不用像leetcode那题一样,直接用数组存储处理就可以了输入:[1,2,3,4,5]2输出:[2,1,4,3,5] //不够K的倍数的数字5维持原状用Java比C++好做定义一个字符串转换为按 , 数组分割的数组的函数/*Javapublic static String [] strTostrArray(String st...原创 2019-04-08 23:09:04 · 413 阅读 · 0 评论 -
PAT基础题 5-1 厘米换算英尺英寸
如果已知英制长度的英尺 footfoot foot和英寸 inchinch inch的值,那么对应的米是 (foot+inch/12)×0.3048(foot+inch/12)\times 0.3048 (foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。 输入格式: 输入在一行中给出1个正整数,单原创 2017-08-10 16:39:47 · 754 阅读 · 0 评论 -
PAT基础题 4-12 判断奇偶性
本题要求实现判断给定整数奇偶性的函数。 函数接口定义: int even( int n ); 其中n是用户传入的整型参数。当n为偶数时,函数返回1;n为奇数时返回0。注意:0是偶数。 裁判测试程序样例:#include <stdio.h>int even( int n );int main(){ int n; scanf("%d", &n); if (even原创 2017-08-10 16:38:30 · 1348 阅读 · 0 评论 -
PAT基础题 4-1 简单输出整数
本题要求实现一个函数,对给定的正整数N,打印从1到N的全部正整数。 函数接口定义: void PrintN ( int N ); 其中N是用户传入的参数。该函数必须将从1到N的全部正整数顺序打印出来,每个数字占1行。输入样例: 3 输出样例: 1 2 3#include <stdio.h>void PrintN ( int N );int main (){ int N;原创 2017-08-05 23:37:34 · 1829 阅读 · 0 评论 -
PAT基础题 4-2 多项式求值
本题要求实现一个函数,计算阶数为n,系数为a[0] … a[n]的多项式f(x)=∑ni=0(a[i]×xi)\sum_{i=0}^n(a[i]×x i) 在x点的值。 函数接口定义: double f( int n, double a[], double x ); 其中n是多项式的阶数,a[]中存储系数,x是给定点。函数须返回多项式f(x)的值。 输入样例: 2 1.1 1原创 2017-08-05 23:44:24 · 670 阅读 · 0 评论 -
PAT基础题 4-3 简单求和
本题要求实现一个函数,求给定的N个整数的和。 函数接口定义: int Sum ( int List[], int N ); 其中给定整数存放在数组List[]中,正整数N是数组元素个数。该函数须返回N个List[]元素的和。 输入样例: 3 12 34 -5 输出样例: 41#include <stdio.h>#define MAXN 10int Sum ( int List[],原创 2017-08-05 23:45:53 · 555 阅读 · 0 评论 -
PAT基础题 4-4 求自定类型元素的平均
本题要求实现一个函数,求N个集合元素S[]的平均值,其中集合元素的类型为自定义的ElementType。 函数接口定义: ElementType Average( ElementType S[], int N ); 其中给定集合元素存放在数组S[]中,正整数N是数组元素个数。该函数须返回N个S[]元素的平均值,其值也必须是ElementType类型。 输入样例: 3 12.3 34 -5原创 2017-08-05 23:47:23 · 221 阅读 · 0 评论 -
PAT基础题 4-5 求自定类型元素的最大值
本题要求实现一个函数,求N个集合元素S[]中的最大值,其中集合元素的类型为自定义的ElementType。 函数接口定义: ElementType Max( ElementType S[], int N ); 其中给定集合元素存放在数组S[]中,正整数N是数组元素个数。该函数须返回N个S[]元素中的最大值,其值也必须是ElementType类型。 输入样例: 3 12.3 34 -5原创 2017-08-05 23:49:23 · 393 阅读 · 0 评论 -
PAT基础题 4-7 统计某类完全平方数
本题要求实现一个函数,判断任一给定整数N是否满足条件:它是完全平方数,又至少有两位数字相同,如144、676等。 函数接口定义: int IsTheNumber ( const int N ); 其中N是用户传入的参数。如果N满足条件,则该函数必须返回1,否则返回0。裁判测试程序样例:#include <stdio.h>#include <math.h>int IsTheNumber (原创 2017-08-05 23:52:47 · 418 阅读 · 2 评论 -
PAT基础题 4-8 简单阶乘计算
本题要求实现一个计算非负整数阶乘的简单函数。 函数接口定义: int Factorial( const int N ); 其中N是用户传入的参数,其值不超过12。如果N是非负整数,则该函数必须返回N的阶乘,否则返回0。 裁判测试程序样例:#include <stdio.h>int Factorial( const int N );int main(){ int N, NF;原创 2017-08-10 16:31:12 · 683 阅读 · 0 评论 -
PAT基础题 4-9 统计个位数字
本题要求实现一个函数,可统计任一整数中某个位数出现的次数。例如-21252中,2出现了3次,则该函数应该返回3。 函数接口定义: int Count_Digit ( const int N, const int D ); 其中N和D都是用户传入的参数。N的值不超过int的范围;D是[0, 9]区间内的个位数。函数须返回N中D出现的次数。 裁判测试程序样例:#include <stdio.h>原创 2017-08-10 16:33:08 · 566 阅读 · 0 评论 -
PAT基础题 4-10 阶乘计算升级版
本题要求实现一个打印非负整数阶乘的函数。 函数接口定义: void Print_Factorial ( const int N ); 其中N是用户传入的参数,其值不超过1000。如果N是非负整数,则该函数必须在一行中打印出N!的值,否则打印“Invalid input”。 裁判测试程序样例:#include <stdio.h>void Print_Factorial ( const int原创 2017-08-10 16:35:41 · 1337 阅读 · 0 评论 -
PAT基础题 4-11 求自定类型元素序列的中位数
本题要求实现一个函数,求N个集合元素A[]的中位数,即序列中第 ⌊N/2+1⌋\lfloor N/2 +1\rfloor ⌊N/2+1⌋大的元素。其中集合元素的类型为自定义的ElementType。 函数接口定义: ElementType Median( ElementType A[], int N ); 其中给定集合元素存放在数组A[]中,正整数N是数组元素个数。该函数须返回N个A[]元原创 2017-08-10 16:37:10 · 3075 阅读 · 2 评论 -
PAT乙级1001
害死人不偿命的(3n+1)猜想 (15) 卡拉兹(Callatz)猜想: 对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个原创 2017-08-03 22:36:44 · 233 阅读 · 0 评论