随笔分类 - Leetcode
leetcode刷题记录
摘要:题目描述 给定一个整数n,输出1-n的全排列。 解答要求时间限制:1000ms, 内存限制:100MB 输入 每个测试文件只有一个数据,输入一个整数n(0<n≤8)。 输出 输出全排列(每个排列中的数字用空格隔开),且每组排列注意按字典序输出所有排列(即要先输出123才能输出132,而不能先输出13
阅读全文
摘要:题目描述 给定一个十进制正整数,要求输出这个正整数的二进制数、八进制数和十六进制数。 解答要求时间限制:1000ms, 内存限制:100MB 输入 输入数据只有一行,包含一个十进制正整数x(1 <= x <= 1000000000) 输出 输出一共3行,第一行输出二进制数,第二行输出八进制数,第三行
阅读全文
摘要:题目描述 水仙花数是指一个N位正整数(N>=3),它的每个位上的数字的N次幂之和等于它本身。例如:153 = 1^3 + 5^3+ 3^3. 1634 = 1^4 + 6^4 + 3^4 + 4^4. 本题要求编写程序,计算所有N位水仙花数。 解答要求时间限制:2000ms, 内存限制:100MB
阅读全文
摘要:题目描述 给定一个正整数n,我们取出前n小的正整数,即1~n这n个数字,将他们排列,就一共有n!种排列方案,所有的排列方案统称为n的全排列,现在你需要做的事情就是把n的全排列都输出出来。 解答要求时间限制:1000ms, 内存限制:100MB 输入 输入只有一个数字n(2 <= n <= 7) 输出
阅读全文
摘要:题目描述 已知鸡和兔的总数量为n,总腿数为m。输入n和m,依次输出鸡的数目和兔的数目。题目保证有解。 解答要求时间限制:1000ms, 内存限制:100MB 输入 一行有两个整数n, m(1 <= n <= 10^5, 1 <= m <= 10^7)。 输出 鸡的数目和兔的数目,用一个空格分开,以回
阅读全文
摘要:题目描述 给你一个字符串,只包含大写字母,求同一字母连续出现的最大次数。例如”AAAABBCDHHH”,同一字母连续出现的最大次数为4,因为一开始A连续出现了4次。 解答要求时间限制:1000ms, 内存限制:100MB 输入 每组输入第一行有一个整数cases(1<=cases<=100),表示有
阅读全文
摘要:题目描述 华老师让你们计算一个等式,s=a+aa+aaa+aaaa+aa…a(总共有n个这样的数相加)的值,其中a是一个1~9的数字。例如当a = 2,n = 5时,s = 2+22+222+2222+22222。 解答要求时间限制:1000ms, 内存限制:100MB 输入 输入一行包含两个整数a
阅读全文
摘要:题目描述 有一棵二叉树,每个节点由一个大写字母标识(最多26个节点)。现有两组字母,分别表示前序遍历(父节点->左孩子->右孩子)和中序遍历(左孩子->父节点->右孩子)的结果,请你输出后序遍历(左孩子->右孩子->父节点)的结果。 解答要求时间限制:1000ms, 内存限制:100MB 输入 每个
阅读全文
摘要:题目描述 一天一只顽猴想去从山脚爬到山顶,途中经过一个有个N个台阶的阶梯,但是这猴子有一个习惯: 每一次只能跳1步或跳3步,试问猴子通过这个阶梯有多少种不同的跳跃方式? 解答要求时间限制:1000ms, 内存限制:100MB 输入 输入只有一个整数N(0<N<=50)此阶梯有多少个阶梯 输出 输出有
阅读全文
摘要:题目描述 某校大门外长度为 L 的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0 的位置,另一端在L 的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知
阅读全文
摘要:代码: class Solution { public: int maxArea(vector<int>& height) { int L = 0,R = height.size()-1; int max_Area = 0; while(L<R) { int ans_area = min(heigh
阅读全文
摘要:代码: class Solution { public: void sortColors(vector<int>& nums) { int Left = 0,right = nums.size()-1; int ptr= 0; for(int i = 0;i<nums.size();i++) { i
阅读全文
摘要:class Solution { public: int threeSumClosest(vector<int>& nums, int target) { int res = nums[0]+nums[1]+nums[2]; for(int i = 0;i<nums.size()-2;i++) {
阅读全文
摘要:class Solution { public: int findMaxLength(vector<int>& nums) { int Max_length = 0; unordered_map<int,int> MP; int counter = 0; MP[counter] = -1; for(
阅读全文
摘要:#include<stdio.h> int main() { int a[1005]; int N; scanf("%d",&N); for(int i = 0;i<N;i++) { scanf("%d",&a[i]); } int k = 0; for(int i = 0;i<N;i++) { i
阅读全文
摘要:题目描述 给定两个由大小写字母和空格组成的字符串s1和 s2,它们的长度都不超过 100 个字符。判断压缩掉空格、并忽略大小写后,这两个字符串在是否相等。 解答要求时间限制:1000ms, 内存限制:100MB 输入 输入两个字符串(分两行输入),只包含字母和空格。输入有多组测试,且到文件末尾结束。
阅读全文
摘要:回文串的定义 两种回文串:奇数:字母的出现频次偶数:字母的出现频次 题目 思路 哈希记录每个字符的个数,统计偶数的和奇数的字符,偶数的字符个数加1则为当前最大的回文串。 代码: class Solution { public: int longestPalindrome(string s) { in
阅读全文
摘要:快速排序 #include <stdio.h> int a[101], n;//定义全局变量,这两个变量需要在子函数中使用 void quicksort(int left, int right) { int i, j, t, temp; if (left > right) return; temp
阅读全文
摘要:思路 遍历字符串,同时在前后字符串不同时停止计数, class Solution(object): def compressString(self, S): """ :type S: str :rtype: str """ if not S: return '' res = [] count = 1
阅读全文
摘要:题目 思路: class Solution: def spiralOrder(self, matrix: List[List[int]]) -> List[int]: result = [] if not matrix: return [] up = 0 down = len(matrix) - 1
阅读全文