LeetCode
diyhoos
这个作者很懒,什么都没留下…
展开
-
LeetCode14. 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""。示例 1:输入: ["flower","flow","flight"]输出: "fl"示例 2:输入: ["dog","racecar","car"]输出: ""解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。cla原创 2018-05-17 23:28:40 · 140 阅读 · 0 评论 -
LeetCode 13罗马数字转整数
罗马数字包含以下七种字符:I, V, X, L,C,D 和 M。字符 数值I 1V 5X 10L 50C 100D 500M 1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做...原创 2018-05-16 23:19:02 · 565 阅读 · 0 评论 -
LeetCode 9回文数
判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。class Solution {public: bool isPalindrome(int x) { ...原创 2018-05-16 21:05:19 · 208 阅读 · 0 评论 -
Leetcode7反转整数
给定一个 32 位有符号整数,将整数中的数字进行反转。示例 1:输入: 123输出: 321 示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储 32 位有符号整数,其数值范围是 [−231, 231 − 1]。根据这个假设,如果反转后的整数溢出,则返回 0此题特别要注意溢出问题。占内存长度不同和取值范围不同。32位系统:l...原创 2018-05-16 20:33:25 · 210 阅读 · 0 评论 -
LeetCode-3无重复字符的最长子串
class Solution {public: int lengthOfLongestSubstring(std::string s) { std::map<char, size_t> map; std::map<char, size_t>::iterator iter; size_t length = s....原创 2018-05-16 19:41:20 · 128 阅读 · 0 评论 -
LeetCood-2两数相加
给定两个非空链表来表示两个非负整数。位数按照逆序方式存储,它们的每个节点只存储单个数字。将两数相加返回一个新的链表。你可以假设除了数字 0 之外,这两个数字都不会以零开头。输入:(2 -> 4 -> 3) + (5 -> 6 -> 4)输出:7 -> 0 -> 8原因:342 + 465 = 807第一种方法:/** * Definition for si...原创 2018-05-16 00:03:06 · 251 阅读 · 0 评论 -
LeetCode-1两数之和
给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]第一种解法:就是遍历数组中的两数之和,将和等于target的位置输出,时间复杂度为O(n2)class Solut...原创 2018-05-15 20:01:00 · 139 阅读 · 0 评论 -
LeetCode 20. 有效的括号
给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。思路:只要遇到括号匹配的问题,我们就选择用栈,遇到左括号就进栈,遇到右括号,就判断栈顶元素是否与之匹配,匹配的话就pop出栈,不匹配的话就返回false。class Solution {pu...转载 2018-05-31 14:21:03 · 108 阅读 · 0 评论 -
LeetCode 22. 括号生成
给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合。例如,给出 n = 3,生成结果为:[ "((()))", "(()())", "(())()", "()(())", "()()()"]class Solution {public: vector<string> result; vector&转载 2018-05-31 15:40:11 · 202 阅读 · 0 评论 -
LeetCode 21. 合并两个有序链表
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4/** * Definition for singly-linked list. * struct ListNode { * int val; * ...转载 2018-05-31 16:26:44 · 251 阅读 · 0 评论 -
LeetCode 26. 删除排序数组中的重复项
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为1,2.你不需要考虑数组中超出新长度后面的元素。说明:为什么返回数值是整数,但输出的答...转载 2018-05-31 16:51:18 · 105 阅读 · 0 评论 -
蓝桥杯-基础练习 十六进制转十进制
问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出。 注:十六进制数中的10~15分别用大写的英文字母A、B、C、D、E、F表示。样例输入FFFF样例输出65535解题思路:#include<iostream>#include<cmath>#include<string>using namespace std;in...原创 2018-06-30 14:57:15 · 1748 阅读 · 0 评论 -
蓝桥杯 基础练习 十进制转十六进制
问题描述 十六进制数是在程序设计时经常要使用到的一种整数的表示方式。它有0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F共16个符号,分别表示十进制数的0至15。十六进制的计数方法是满16进1,所以十进制数16在十六进制中是10,而十进制的17在十六进制中是11,以此类推,十进制的30在十六进制中是1E。 给出一个非负整数,将它表示成十六进制的形式。输入格式 输入包含一个非负...原创 2018-06-30 17:04:46 · 214 阅读 · 0 评论 -
蓝桥杯-Fibonacci数列
问题描述Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。输入格式输入包含一个整数n。输出格式输出一行,包含一个整数,表示Fn除以10007的余数。说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取...原创 2018-06-26 22:57:21 · 619 阅读 · 0 评论 -
蓝桥杯-入门训练 圆的面积
问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。说明:在本题中,输入是一个整数,但是输出是一个实数。对于实数输出的问题,请一定看清楚实数输出的要求,比如本题中要求保留小数点后7位,则你的程序必须严格的输出7位小数,输出过多或者过少的小数位数都是不行的,都会被认为错误。实数输出的问题如果没有特别说明...原创 2018-06-27 16:01:14 · 110 阅读 · 0 评论 -
蓝桥杯
问题描述求1+2+3+...+n的值。输入格式输入包括一个整数n。输出格式输出一行,包括一个整数,表示1+2+3+...+n的值。样例输入4样例输出10样例输入100说明:有一些试题会给出多组样例输入输出以帮助你更好的做题。一般在提交之前所有这些样例都需要测试通过才行,但这不代表这几组样例数据都正确了你的程序就是完全正确的,潜在的错误可能仍然导致你的得分较低。样例输出5050数据规模与约定1 &l...原创 2018-06-27 16:22:45 · 358 阅读 · 0 评论 -
蓝桥杯-基础练习 数列排序
问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列。1<=n<=200输入格式 第一行为一个整数n。 第二行包含n个整数,为待排序的数,每个整数的绝对值小于10000。输出格式 输出一行,按从小到大的顺序输出排序后的数列。样例输入58 3 6 4 9样例输出3 4 6 8 9#include <iostream>using namespace std...原创 2018-06-27 16:55:00 · 238 阅读 · 0 评论 -
蓝桥杯-基础练习 十六进制转八进制
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由0~9、大写字母A~F组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式 输出n行,每行为输入对应的八进制正整数。 【注意】 输入的十六进制数不会有前导0,比如012A。 输出的八进制数也不能有...原创 2018-06-27 19:24:46 · 309 阅读 · 0 评论 -
解析模型——预测轰炸机攻击成功的概率
例:一个军事行动的指挥官计划对敌方一个有防卫的目标实行空中打击。在战斗开始的第一天,每架轰炸机有0.5的概率摧毁目标,假设如果轰炸机穿越空中防线后发现目标的概率是0.9.目标由两个地对空(SAM)阵地和若干个防空火炮组成,每个SAM阵地有自己的跟踪雷达和计算机指挥设备,它能够同时跟踪两架飞机,同时操纵两枚导弹。情报估计一枚导弹有0.6概率摧毁其目标飞机。两个SAM阵地共用一台目标搜索雷达,雷达对于...原创 2018-07-21 15:52:35 · 1625 阅读 · 0 评论 -
PAT-1016. 部分A+B
1016. 部分A+B (15) 时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)题目描述正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。 现给定A、DA、B、DB...原创 2018-08-09 09:52:49 · 128 阅读 · 0 评论 -
PAT-A除以B
A除以B (20) 时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)题目描述本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。 输入描述:输入在1行中依次给出A和B,中间以1空格分隔。 ...原创 2018-08-09 10:57:05 · 203 阅读 · 0 评论 -
PAT- 锤子剪刀布 (20)
锤子剪刀布 (20) 时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)题目描述大家应该都会玩“锤子剪刀布”的游戏:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。 输入描述:输入第1行给出正整数N(<=105),即双方交锋的次...原创 2018-08-10 18:58:45 · 133 阅读 · 0 评论 -
PAT-1019. 数字黑洞
题目描述给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到 一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。 例如,我们从6767开始,将得到 7766 - 6677 = 1089 9810 - 0189 = 9621 9621 -...原创 2018-08-11 16:21:37 · 144 阅读 · 0 评论 -
PAT- 个位数统计 (15)
题目描述给定一个k位整数N = dk-1*10k-1 + ... + d1*101 + d0 (0<=di<=9, i=0,...,k-1, dk-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N = 100311,则有2个0,3个1,和1个3。 输入描述:每个输入包含1个测试用例,即一个不超过1000位的正整数N。 输出描述:...原创 2018-08-11 16:56:36 · 176 阅读 · 0 评论 -
PAT乙级-数素数
数素数 (20) 时间限制 1000 ms 内存限制 32768 KB 代码长度限制 100 KB 判断程序 Standard (来自 小小)题目描述令Pi表示第i个素数。现任给两个正整数M <= N <= 10000,请输出PM到PN的所有素数。 输入描述:输入在一行中给出M和N,其间以空格分隔。 输出描述:输出从PM到PN的...原创 2018-08-07 18:41:10 · 140 阅读 · 0 评论 -
PAT-德才论 (25)
题目描述宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。 输入描述:输入第1行给出3个正整数,分别为:N(<=105),即考生总数;L(>=60),为录取...原创 2018-08-08 10:51:12 · 135 阅读 · 0 评论 -
PAT-D进制的A+B
题目描述输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数。 输入描述:输入在一行中依次给出3个整数A、B和D。 输出描述:输出A+B的D进制数。 输入例子:123 456 8 输出例子:1103 代码实现:#include<iostream>u...原创 2018-08-23 16:16:34 · 203 阅读 · 0 评论 -
PAT-组个最小数
题目描述给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。 输入描述:每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数,顺序表示我们拥有数字0、数字1、...原创 2018-08-23 17:17:06 · 452 阅读 · 0 评论 -
PAT乙级1003 我要通过! (20 分)
“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:字符串中必须仅有 P、 A、 T这三种字符,不可以包含其它字符; 任意形如 xPATx 的字符串都可以获得“答案正确”,其中 x 或者是空字符串,或者是仅由字母 A 组成的字符串; 如果 a...原创 2018-10-02 20:51:56 · 105 阅读 · 0 评论 -
PAT-1007 素数对猜想
1007 素数对猜想 (20 分)让我们定义dn为:dn=pn+1−pn,其中pi是第i个素数。显然有d1=1,且对于n>1有dn是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N(<105),请计算不超过N的满足猜想的素数对的个数。输入格式:输入在一行给出正整数N。输出格式:在一行中...原创 2018-10-04 19:07:02 · 96 阅读 · 0 评论 -
PAT-1013 数素数 (20 分)
1013 数素数 (20 分)令 Pi 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 PM 到 PN 的所有素数。输入格式:输入在一行中给出 M 和 N,其间以空格分隔。输出格式:输出从 PM 到 PN 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。输入样例:5 27输出样例:...原创 2018-10-04 20:03:58 · 481 阅读 · 0 评论 -
PAT-PAT (Basic Level) Practice (中文)
1076 Wifi密码 (15 分)下面是微博上流传的一张照片:“各位亲爱的同学们,鉴于大家有时需要使用 wifi,又怕耽误亲们的学习,现将 wifi 密码设置为下列数学题答案:A-1;B-2;C-3;D-4;请同学们自己作答,每两日一换。谢谢合作!!~”—— 老师们为了促进学生学习也是拼了…… 本题就要求你写程序把一系列题目的答案按照卷子上给出的对应关系翻译成 wifi 的密码。这里简单假设...原创 2018-10-04 20:17:12 · 351 阅读 · 0 评论 -
PAT-1012 数字分类 (20 分)
1012 数字分类 (20 分)给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:A1 = 能被 5 整除的数字中所有偶数的和; A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n3−n4⋯; A3 = 被 5 除后余 2 的数字的个数; A4 = 被 5 除后余 3 的数字的平均数,精...原创 2018-10-05 22:35:42 · 219 阅读 · 0 评论 -
PAT-1017 A除以B (20 分)
1017 A除以B (20 分)本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。输入格式:输入在一行中依次给出 A 和 B,中间以 1 空格分隔。输出格式:在一行中依次输出 Q 和 R,中间以 1 空格分隔。输入样例:123456789050987654321 7输...原创 2018-10-06 18:15:31 · 790 阅读 · 0 评论 -
PAT-1008 数组元素循环右移问题
1008 数组元素循环右移问题 (20 分)一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0A1⋯AN−1)变换为(AN−M⋯AN−1A0A1⋯AN−M−1)(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移动的方法?输入...原创 2018-10-07 15:54:12 · 70 阅读 · 0 评论 -
PAT-1021 个位数统计
1021 个位数统计 (15 分)给定一个 k 位整数 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3。输入格式:每个输入包含 1 个测试用例,即一个不超过 1000...原创 2018-10-07 16:27:25 · 194 阅读 · 0 评论 -
PTA-1029 旧键盘
1029 旧键盘 (20 分)旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在 2 行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过 80 个字符的串,由字母 A-Z(包括大、小写)、数字 0-9、以及下划线 _(代表空格)组成。题目保证 2 个字符串均非空。...原创 2018-10-18 10:55:00 · 520 阅读 · 0 评论 -
PTA-1022 D进制的A+B
1022 D进制的A+B (20 分)输入两个非负 10 进制整数 A 和 B (≤2^30−1),输出 A+B 的 D (1<D≤10)进制数。输入格式:输入在一行中依次给出 3 个整数 A、B 和 D。输出格式:输出 A+B 的 D 进制数。输入样例:123 456 8输出样例:1103#include<iostream>...原创 2018-10-08 16:40:18 · 564 阅读 · 0 评论 -
PTA-1032 挖掘机技术哪家强
为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第 1 行给出不超过 105 的正整数 N,即参赛人数。随后 N 行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从 1 开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及其总分,...原创 2018-10-18 15:48:59 · 259 阅读 · 0 评论 -
PTA-1036 跟奥巴马一起编程
1036 跟奥巴马一起编程 (15 分)美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014 年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!输入格式:输入在一行中给出正方形边长 N(3≤N≤20)和组成正方形边的某种字符 C,间隔一个空格。输出格式:...原创 2018-10-18 16:52:55 · 400 阅读 · 0 评论