
51Nod
我的脚印
一步一步往上爬
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
51Nod 1085 背包问题 【dp】
51Nod 1085 背包问题 【dp】在N件物品取出若干件放在容量为W的背包里,每件物品的体积为W1,W2……Wn(Wi为整数),与之相对应的价值为P1,P2……Pn(Pi为整数)。求背包能够容纳的最大价值。输入第1行,2个整数,N和W中间用空格隔开。N为物品的数量,W为背包的容量。(1 <= N <= 100,1 <= W <= 10000)第2...原创 2019-04-26 14:24:11 · 160 阅读 · 0 评论 -
51Nod 1080 两个数的平方和
1080 两个数的平方和给出一个整数N,将N表示为2个整数i与j的平方之和(i <= j),如果有多种表示,按照i的递增序输出。例如:N = 130,130 = 3^2 + 11^2 = 7^2 + 9^2(注:3^2 + 11^2同11^2+3^2算1种)输入一个数N(1 <= N <= 10^9)输出共K行:每行2个数,i j,表示N =...原创 2019-05-21 10:19:33 · 211 阅读 · 0 评论 -
51Nod 1136 欧拉函数 【数论】
51Nod 1136 欧拉函数 【数论】对正整数n,欧拉函数是少于或等于n的数中与n互质的数的数目。此函数以其首名研究者欧拉命名,它又称为Euler's totient function、φ函数、欧拉商数等。例如:φ(8) = 4(Phi(8) = 4),因为1,3,5,7均和8互质。输入输入一个数N。(2 <= N <= 10^9)输出输出Phi(n)。...原创 2019-05-06 12:10:37 · 163 阅读 · 0 评论 -
51nod 1006 最长公共子序列 Lcs【dp】
51nod 1006 最长公共子给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的)。比如两个串为:abcicbaabdkscabab是两个串的子序列,abc也是,abca也是,其中abca是这两个字符串最长的子序列。收起输入第1行:字符串A第2行:字符串B(A,B的长度 <= 1000)输出输出最长的子序列,如...原创 2019-04-09 13:01:23 · 196 阅读 · 0 评论 -
51Nod 1019 逆序数 【分治】
51Nod 1019 逆序数分治法1019 逆序数如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。如2 4 3 1中,2 1,4 3,4 1,3 1是逆序,逆序数是4。给出一个整数序列,求该序列的逆序数。收起输入第1行:N,N为序列的长度(n <= 50000)第2 - N + ...原创 2019-04-15 12:35:03 · 203 阅读 · 0 评论 -
51Nod 1027 大数相乘
51Nod 1027 大数相乘给出2个大整数A,B,计算A*B的结果。输入第1行:大数A第2行:大数B(A,B的长度 <= 1000,A,B >= 0)输出输出A * B输入样例123456234567输出样例28958703552大数运算 基础中的基础 身边的很多同学觉得没用 毕竟Java 和python 都有更简单的解...原创 2019-04-15 23:27:35 · 201 阅读 · 0 评论 -
51Nod 1046 A ^ B Mod C 【快速模幂】
51Nod 1046 A ^ B Mod C给出3个正整数A B C,求A^B Mod C。例如,3 5 8,3^5 Mod 8 = 3。输入3个正整数A B C,中间用空格分隔。(1 <= A,B,C <= 10^9)输出输出计算结果输入样例3 5 8输出样例3可以或是一道快速模幂的裸题 概念就看链接吧 很简单...原创 2019-04-15 23:57:00 · 165 阅读 · 0 评论 -
51nod 1066 Bash游戏 【博弈论】
51nod 1066 Bash游戏 【博弈论】有一堆石子共有N个。A B两个人轮流拿,A先拿。每次最少拿1颗,最多拿K颗,拿到最后1颗石子的人获胜。假设A B都非常聪明,拿石子的过程中不会出现失误。给出N和K,问最后谁能赢得比赛。例如N = 3,K = 2。无论A如何拿,B都可以拿到最后1颗石子。输入第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T &...原创 2019-04-17 11:40:27 · 219 阅读 · 0 评论 -
51Nod 1081 字段和 【前缀和】
51Nod 1081 字段和 【前缀和】给出一个长度为N的数组,进行Q次查询,查询从第i个元素开始长度为l的子段所有元素之和。例如,1 3 7 9 -1,查询第2个元素开始长度为3的子段和,1 {3 7 9} -1。3 + 7 + 9 = 19,输出19。输入第1行:一个数N,N为数组的长度(2 <= N <= 50000)。第2 至 N + 1行:数组...原创 2019-04-18 06:51:46 · 138 阅读 · 0 评论 -
51Nod 1134 最长上升子序列 【动态规划】
51Nod 1134 最长上升子序列 【动态规划】给出长度为N的数组,找出这个数组的最长递增子序列。(递增子序列是指,子序列的元素是递增的)例如:5 1 6 8 2 4 5 10,最长递增子序列是1 2 4 5 10。收起输入第1行:1个数N,N为序列的长度(2 <= N <= 50000)第2 - N + 1行:每行1个数,对应序列的元素(-10^9...原创 2019-04-23 07:30:57 · 219 阅读 · 0 评论 -
51Nod 1004 N^N 的末位数字 【水题】【打表】
51Nod 1004 N^N 的末位数字给出一个整数N,输出N^N(N的N次方)的十进制表示的末位数字。输入一个数N(1 <= N <= 10^9)输出输出N^N的末位数字输入样例13输出样例3这是一道大水题 只不过 样例范围给的比较大 直接n%10 然后乘的话 回TLE 思路很简单 找规律 10个数字的高次幂 末尾数字是循...原创 2019-04-23 11:22:32 · 185 阅读 · 0 评论 -
51Nod 1057 N的阶乘
51Nod 1057 N的阶乘输入N求N的阶乘的准确值。输入输入N(1 <= N <= 10000)输出输出N的阶乘输入样例5输出样例120大家都知道阶乘的增长速度非常快 实例范围一但增大 long long 被爆是意料之中的 那怎样才能解决这个问题的 计算大数乘法的时候 我们就用int 数组 存储过大数 数组中每一项...原创 2019-04-24 07:04:17 · 149 阅读 · 0 评论 -
51Nod 1088 最长回文子串 【Manacher算法】带模板详解
51Nod 1088 最长回文子串输入一个字符串Str,输出Str里最长回文子串的长度。回文串:指aba、abba、cccbccc、aaaa这种左右对称的字符串。串的子串:一个串的子串指此(字符)串中连续的一部分字符构成的子(字符)串例如 abc 这个串的子串:空串、a、b、c、ab、ac、bc、abc收起输入输入Str(Str的长度 <= 1000)输出...原创 2019-04-26 01:36:23 · 288 阅读 · 0 评论 -
51Nod 1089 最长回文子串V2(Manacher算法)
51Nod 1089 最长回文子串V2(Manacher算法)回文串是指aba、abba、cccbccc、aaaa这种左右对称的字符串。输入一个字符串Str,输出Str里最长回文子串的长度。输入输入Str(Str的长度 <= 100000)输出输出最长回文子串的长度L。输入样例daabaac输出样例5这道题和51Nod 1088 最长回文子...原创 2019-04-26 02:02:20 · 156 阅读 · 0 评论 -
51Nod 1049 最大子段和 【简单dp】
51Nod 1049 最大子段和N个整数组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的连续子段和的最大值。当所给的整数均为负数时和为0。例如:-2,11,-4,13,-5,-2,和最大的子段为:11,-4,13。和为20。收起输入第1行:整数序列的长度N(2 <= N <= 50000)第2 - ...原创 2019-04-26 02:11:09 · 193 阅读 · 0 评论 -
51Nod 2006 飞行员配对 【匈牙利算法】
51Nod 2006 飞行员配对 【匈牙利算法】第二次世界大战时期,英国皇家空军从沦陷国征募了大量外籍飞行员。由皇家空军派出的每一架飞机都需要配备在航行技能和语言上能互相配合的2名飞行员,其中1名是英国飞行员,另1名是外籍飞行员。在众多的飞行员中,每一名外籍飞行员都可以与其他若干名英国飞行员很好地配合。如何选择配对飞行的飞行员才能使一次派出最多的飞机。对于给定的外籍飞行员与英国飞行员的配合...原创 2019-04-26 12:50:15 · 175 阅读 · 0 评论 -
51Nod 1083 矩阵取数问题 【简单dp】
51Nod 1083 矩阵取数问题一个N*N矩阵中有不同的正整数,经过这个格子,就能获得相应价值的奖励,从左上走到右下,只能向下向右走,求能够获得的最大价值。例如:3 * 3的方格。1 3 32 1 32 2 1能够获得的最大价值为:11。输入第1行:N,N为矩阵的大小。(2 <= N <= 500)第2 - N + 1行:每行N个数,...原创 2019-04-26 14:21:09 · 169 阅读 · 0 评论 -
51Nod 1137矩阵乘法
1137 矩阵乘法给出2个N * N的矩阵M1和M2,输出2个矩阵相乘后的结果。输入第1行:1个数N,表示矩阵的大小(2 <= N <= 100)第2 - N + 1行,每行N个数,对应M1的1行(0 <= M1[i] <= 1000)第N + 2 - 2N + 1行,每行N个数,对应M2的1行(0 <= M2[i] <= 1000)...原创 2019-05-21 10:37:48 · 157 阅读 · 0 评论