
51nod
Viscu
勤能补拙。
展开
-
51nod N的倍数(抽屉原理)
一个长度为N的数组A,从A中选出若干个数,使得这些数的和是N的倍数。例如:N = 8,数组A包括:2 5 6 3 18 7 11 19,可以选2 6,因为2 + 6 = 8,是8的倍数。Input第1行:1个数N,N为数组的长度,同时也是要求的倍数。(2 <= N <= 50000)第2 - N + 1行:数组A的元素。(0 < A[i] <= 10^9)Output如果没有符合条件的组原创 2016-10-20 19:02:55 · 522 阅读 · 0 评论 -
51nod1305 Pairwise Sum and Divide
1305 Pairwise Sum and Divide题目来源: HackerRank基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注有这样一段程序,fun会对整数数组A进行求值,其中Floor表示向下取整:fun(A) sum = 0 for i = 1 to A.length for j = i+1 to A.原创 2017-04-15 22:31:52 · 366 阅读 · 0 评论 -
51NOD1264 线段相交(计算几何)
1264 线段相交基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注给出平面上两条线段的两个端点,判断这两条线段是否相交(有一个公共点或有部分重合认为相交)。 如果相交,输出"Yes",否则输出"No"。Input第1行:一个数T,表示输入的测试数量(1 <= T <= 1000)第2 - T + 1行:每行8个数,x1,y1,x2,y2,x3,y3原创 2017-04-15 21:30:16 · 413 阅读 · 0 评论 -
51nod 四点共面(数学)
1265 四点共面基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注给出三维空间上的四个点(点与点的位置均不相同),判断这4个点是否在同一个平面内(4点共线也算共面)。如果共面,输出"Yes",否则输出"No"。Input第1行:一个数T,表示输入的测试数量(1 <= T <= 1000)第2 - 4T + 1行:每行4行表示一组数据,每行3个数,x原创 2017-05-01 18:17:21 · 498 阅读 · 0 评论 -
51nod 线段的重叠(贪心)
1091 线段的重叠基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 收藏 关注X轴上有N条线段,每条线段包括1个起点和终点。线段的重叠是这样来算的,[10 20]和[12 25]的重叠部分为[12 20]。给出N条线段的起点和终点,从中选出2条线段,这两条线段的重叠部分是最长的。输出这个最长的距离。如果没有重叠,输出0。Input第1行:线段的数量N(2原创 2017-04-15 14:24:04 · 318 阅读 · 0 评论 -
51nod 1183 编辑距离(动态规划)
基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注编辑距离,又称Levenshtein距离(也叫做Edit Distance),是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。例如将kitten一字转成sitting:sitten (k->s)sittin (e->i)原创 2017-04-18 21:06:01 · 496 阅读 · 0 评论 -
51nod 1138 连续整数的和(数学)
1138 连续整数的和基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注给出一个正整数N,将N写为若干个连续数字和的形式(长度 >= 2)。例如N = 15,可以写为1 + 2 + 3 + 4 + 5,也可以写为4 + 5 + 6,或7 + 8。如果不能写为若干个连续整数的和,则输出No Solution。Input输入1个数N(3 <= N <原创 2017-04-05 21:57:08 · 347 阅读 · 0 评论 -
51NOD1116 K进制下的大数
有一个字符串S,记录了一个大数,但不知这个大数是多少进制的,只知道这个数在K进制下是K - 1的倍数。现在由你来求出这个最小的进制K。例如:给出的数是A1A,有A则最少也是11进制,然后发现A1A在22进制下等于4872,4872 mod 21 = 0,并且22是最小的,因此输出k = 22(大数的表示中A对应10,Z对应35)。Input输入大数对应的字符串S。S的长度小于10^5。Out原创 2017-04-04 23:44:53 · 444 阅读 · 0 评论 -
51NOD1525重组公司(并差集)
有n个人在公司里面工作。员工从1到n编号。每一个人属于一个部门。刚开始每一个人在自己的部门负责自己的项目,这样的话公司里面就有n个部门。然而,公司内部出现了危机,需要合并一些部门,以提高工作效率。team(person) 表示person这个人所在的部门。有以下两种合并操作:1. 合并 team(x) 和 team(y)。 x和 y (1≤x,y≤n)是员工编号。如果team(x) 和 t原创 2016-10-26 18:55:45 · 848 阅读 · 0 评论 -
51NOD 1127 最短的包含字符串(尺取法)
给出一个字符串,求该字符串的一个子串S,S包含A-Z中的全部字母,并且S是所有符合条件的子串中最短的,输出S的长度。如果给出的字符串中并不包括A-Z中的全部字母,则输出No Solution。Input第1行,1个字符串。字符串的长度 <= 100000。Output输出包含A-Z的最短子串长度。如果没有符合条件的子串,则输出No Solution。Input示例BVCABCDEFFGH原创 2016-11-01 17:11:23 · 439 阅读 · 0 评论 -
51NOD 背包问题v2(动态规划)
有N种物品,每种物品的数量为C1,C2......Cn。从中任选若干件放在容量为W的背包里,每种物品的体积为W1,W2......Wn(Wi为整数),与之相对应的价值为P1,P2......Pn(Pi为整数)。求背包能够容纳的最大价值。Input第1行,2个整数,N和W中间用空格隔开。N为物品的种类,W为背包的容量。(1 <= N <= 100,1 <= W <= 50000)第2 - N +原创 2016-10-23 14:30:18 · 446 阅读 · 0 评论 -
51NOD1287 加农炮(线段树)
一个长度为M的正整数数组A,表示从左向右的地形高度。测试一种加农炮,炮弹平行于地面从左向右飞行,高度为H,如果某处地形的高度大于等于炮弹飞行的高度H(A[i] >= H),炮弹会被挡住并落在i - 1处,则A[i - 1] + 1。如果H <= A[0],则这个炮弹无效,如果H > 所有的A[i],这个炮弹也无效。现在给定N个整数的数组B代表炮弹高度,计算出最后地形的样子。例如:地形高度A = {原创 2016-10-23 00:19:20 · 385 阅读 · 0 评论 -
51nod 瞬间移动 (组合数学)
1627 瞬间移动基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 收藏 关注有一个无限大的矩形,初始时你在左上角(即第一行第一列),每次你都可以选择一个右下方格子,并瞬移过去(如从下图中的红色格子能直接瞬移到蓝色格子),求到第n行第m列的格子有几种方案,答案对1000000007取模。Input单组测试数据。两个整数n,m(2<=n,m<=100000)原创 2017-05-02 17:19:12 · 1008 阅读 · 0 评论