
51nod基础算法题
Let力Go
为什么我眼里常含泪水,因为我有算法不会
展开
-
51nod_1011 最大公约数GCD
1011 最大公约数GCD 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 输入2个正整数A,B,求A与B的最大公约数。 Input 2个数A,B,中间用空格隔开。(1<= A,B <= 10^9) Output 输出A与B的最大公约数。 Input示例 30 105 Output示例 15 思路:辗转相除 代码:#include<cstdio>原创 2017-04-24 11:02:23 · 445 阅读 · 0 评论 -
51nod_1118 机器人走方格(组合数+逆元)
1118 机器人走方格 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度M * N的方格,一个机器人从左上走到右下,只能向右或向下走。有多少种不同的走法?由于方法数量可能很大,只需要输出Mod 10^9 + 7的结果。 Input 第1行,2个数M,N,中间用空格隔开。(2 <= m,n <= 1000) Output 输出走法的数量。 Input示例 2 3 O原创 2017-04-26 15:09:19 · 792 阅读 · 0 评论 -
51nod_1130 N的阶乘的长度 V2(斯特林近似)
1130 N的阶乘的长度 V2(斯特林近似) 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 输入N求N的阶乘的10进制表示的长度。例如6! = 720,长度为3。 Input 第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 1000) 第2 - T + 1行:每行1个数N。(1 <= N <= 10^9) Output原创 2017-04-26 15:18:23 · 586 阅读 · 0 评论 -
51nod_1136 欧拉函数
1136 欧拉函数 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler’s totient function、φ函数、欧拉商数等。例如:φ(8) = 4(Phi(8) = 4),因为1,3,5,7均和8互质。 Input 输入一个数N。(2原创 2017-04-26 16:23:17 · 503 阅读 · 0 评论 -
51nod_1134 最长递增子序列(O(n*logn))
1134 最长递增子序列 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度: 给出长度为N的数组,找出这个数组的最长递增子序列。(递增子序列是指,子序列的元素是递增的) 例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10。 Input 第1行:1个数N,N为序列的长度(2 <= N <= 50000) 第2 - N + 1行:每行1个数,对应原创 2017-04-26 16:16:42 · 430 阅读 · 0 评论 -
51nod_1089 最长回文子串 V2(Manacher算法)
1089 最长回文子串 V2(Manacher算法)基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 <= 100000) Output 输出最长回文子串的长度L。 Input示例 daa原创 2017-04-26 14:28:22 · 269 阅读 · 0 评论 -
51nod_1137 矩阵乘法
1137 矩阵乘法 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 给出2个N * N的矩阵M1和M2,输出2个矩阵相乘后的结果。 Input 第1行:1个数N,表示矩阵的大小(2 <= N <= 100) 第2 - N + 1行,每行N个数,对应M1的1行(0 <= M1[i] <= 1000) 第N + 2 - 2N + 1行,每行N个原创 2017-04-26 16:24:32 · 358 阅读 · 0 评论 -
51nod_1174 区间中最大的数(线段树模板)
1174 区间中最大的数 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度: 给出一个有N个数的序列,编号0 - N - 1。进行Q次查询,查询编号i至j的所有数中,最大的数是多少。 例如: 1 7 6 3 1。i = 1, j = 3,对应的数为7 6 3,最大的数为7。(该问题也被称为RMQ问题) Input 第1行:1个数N,表示序列的长度。(2 <= N <=原创 2017-04-26 16:26:29 · 328 阅读 · 0 评论 -
51nod_1181 质数中的质数(质数筛法)
1181 质数中的质数(质数筛法) 题目来源: Sgu 基准时间限制:1 秒 空间限制:131072 KB如果一个质数,在质数列表中的编号也是质数,那么就称之为质数中的质数。例如:3 5分别是排第2和第3的质数,所以他们是质数中的质数。现在给出一个数N,求>=N的最小的质数中的质数是多少(可以考虑用质数筛法来做)。 Input 输入一个数N(N <= 10^6) Output 输出>=N原创 2017-04-26 16:39:32 · 333 阅读 · 0 评论 -
51nod_1240 莫比乌斯函数
1240 莫比乌斯函数 基准时间限制:1 秒 空间限制:131072 KB 莫比乌斯函数,由德国数学家和天文学家莫比乌斯提出。梅滕斯(Mertens)首先使用μ(n)(miu(n))作为莫比乌斯函数的记号。(据说,高斯(Gauss)比莫比乌斯早三十年就曾考虑过这个函数)。 具体定义如下: 如果一个数包含平方因子,那么miu(n) = 0。例如:miu(4), miu(12), miu(18)原创 2017-04-26 16:42:25 · 244 阅读 · 0 评论 -
51nod_1256 乘法逆元
1256 乘法逆元 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 给出2个数M和N(M < N),且M与N互质,找出一个数K满足0 < K < N且K * M % N = 1,如果有多个满足条件的,输出最小的。 Input 输入2个数M, N中间用空格分隔(1 <= M < N <= 10^9) Output 输出一个数K,满足0 < K原创 2017-04-26 16:44:55 · 318 阅读 · 0 评论 -
51nod_1106 质数检测
1106 质数检测 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出N个正整数,检测每个数是否为质数。如果是,输出”Yes”,否则输出”No”。 Input 第1行:一个数N,表示正整数的数量。(1 <= N <= 1000) 第2 - N + 1行:每行1个数(2 <= S[i] <= 10^9) Output 输出共N行,每行为 Ye原创 2017-04-26 14:30:38 · 290 阅读 · 0 评论 -
51nod_1088 最长回文子串((Manacher算法)
1088 最长回文子串基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。 输入一个字符串Str,输出Str里最长回文子串的长度。 Input 输入Str(Str的长度 <= 1000) Output 输出最长回文子串的长度L。 Input示例 daabaac Output示例 5原创 2017-04-24 12:53:05 · 303 阅读 · 0 评论 -
51nod_1081 子段求和
1081 子段求和 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出一个长度为N的数组,进行Q次查询,查询从第i个元素开始长度为l的子段所有元素之和。 例如,1 3 7 9 -1,查询第2个元素开始长度为3的子段和,1 {3 7 9} -1。3 + 7 + 9 = 19,输出19。 Input 第1行:一个数N,N为数组的长度(2 <= N <= 500原创 2017-04-24 12:50:01 · 776 阅读 · 0 评论 -
51nod_1012 最小公倍数LCM
1012 最小公倍数LCM基准时间限制:1 秒 空间限制:131072 KB 分值: 0 输入2个正整数A,B,求A与B的最小公倍数。 Input 2个数A,B,中间用空格隔开。(1<= A,B <= 10^9) Output 输出A与B的最小公倍数。 Input示例 30 105 Output示例 210代码:#include<cstdio>#include<iostream>原创 2017-04-24 11:08:15 · 254 阅读 · 0 评论 -
51_nod 1018 排序
1018 排序 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 给出N个整数,对着N个整数进行排序 Input 第1行:整数的数量N(1 <= N <= 50000) 第2 - N + 1行:待排序的整数(-10^9 <= A[i] <= 10^9) Output 共n行,按照递增序输出排序好的数据。 Input示例 5 5 4原创 2017-04-24 11:10:05 · 215 阅读 · 0 评论 -
51_nod 1019 逆序数
1019 逆序数 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。 如2 4 3 1中,2 1,4 3,4 1,3 1是逆序,逆序数是4。给出一个整数序列,求该序列的逆序数。 Input 第1行:N,N原创 2017-04-24 11:25:06 · 243 阅读 · 0 评论 -
51nod_1046 A^B Mod C
1046 A^B Mod C基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出3个正整数A B C,求A^B Mod C。 例如,3 5 8,3^5 Mod 8 = 3。 Input 3个正整数A B C,中间用空格分隔。(1 <= A,B,C <= 10^9) Output 输出计算结果 Input示例 3 5 8 Output示例 3思路:快速幂原创 2017-04-24 11:39:35 · 334 阅读 · 0 评论 -
51nod_1049 最大子段和(简单DP)
1046 A^B Mod C基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 给出3个正整数A B C,求A^B Mod C。 例如,3 5 8,3^5 Mod 8 = 3。 Input 3个正整数A B C,中间用空格分隔。(1 <= A,B,C <= 10^9) Output 输出计算结果 Input示例 3 5 8 Output示例 3思路:快速幂原创 2017-04-24 11:46:50 · 246 阅读 · 0 评论 -
51nod_1057 N的阶乘(大数)
1057 N的阶乘 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题输入N求N的阶乘的准确值。 Input 输入N(1 <= N <= 10000) Output 输出N的阶乘 Input示例 5 Output示例 120思路:java暴力代码://package javaBigInt;import java.math.BigInteger;impor原创 2017-04-24 11:48:18 · 457 阅读 · 0 评论 -
51nod_1058 N的阶乘的长度(斯特林公式)
1058 N的阶乘的长度 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 输入N求N的阶乘的10进制表示的长度。例如6! = 720,长度为3。 Input 输入N(1 <= N <= 10^6) Output 输出N的阶乘的长度 Input示例 6 Output示例 3思路:1.可以取log(n!)向下取整+1,时间复杂度o(n)原创 2017-04-24 11:55:10 · 318 阅读 · 0 评论 -
51nod_1066 Bash游戏
1066 Bash游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 有一堆石子共有N个。A B两个人轮流拿,A先拿。每次最少拿1颗,最多拿K颗,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N和K,问最后谁能赢得比赛。 例如N = 3,K = 2。无论A如何拿,B都可以拿到最后1颗石子。 Input 第1行:原创 2017-04-24 11:58:00 · 360 阅读 · 0 评论 -
51nod_1069 Nim游戏
1069 Nim游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 有N堆石子。A B两个人轮流拿,A先拿。每次只能从一堆中取若干个,可将一堆全取走,但不可不取,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N及每堆石子的数量,问最后谁能赢得比赛。 例如:3堆石子,每堆1颗。A拿1颗,B拿1颗,此时还剩1堆,所原创 2017-04-24 12:00:00 · 244 阅读 · 0 评论 -
51nod_1072 威佐夫游戏
1072 威佐夫游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题有2堆石子。A B两个人轮流拿,A先拿。每次可以从一堆中取任意个或从2堆中取相同数量的石子,但不可不取。拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出2堆石子的数量,问最后谁能赢得比赛。 例如:2堆石子分别为3颗和5颗。那么不论A怎样拿,B都有对应的方法拿到最后1颗原创 2017-04-24 12:04:48 · 315 阅读 · 0 评论 -
51nod_1384 全排列
1384 全排列 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 取消关注 给出一个字符串S(可能有重复的字符),按照字典序从小到大,输出S包括的字符组成的所有排列。例如:S = “1312”, 输出为:1123 1132 1213 1231 1312 1321 2113 2131 2311 3112 3121 3211 Input原创 2017-04-26 16:46:20 · 313 阅读 · 0 评论