英雄之路
文章平均质量分 80
_Luffy
https://github.com/JianmingXia
展开
-
覆盖数字【解】--英雄会
首先看看题目:给定整数区间[a,b]和整数区间[x,y],你可以使用任意多次a,b之间的整数做加法,可以凑出多少个[x,y]区间内的整数? 输入 a,b,x,y,其中1<= a < b <= 1000000000, 1 <= x < y <= 1000000000。 输出: 用[a,b]内的整数做任意多次加法,可以得到多少个[x,y]内的整数。 例如a = 8, b = 10, x = 3 , y = 20 我们可以得到 [3..20]之间的整数 8, 9, 10, 16 ( 8 + 8),原创 2013-12-29 13:49:58 · 1192 阅读 · 0 评论 -
微软必应-英雄会第三届在线编程大赛:几个Bing?【英雄会】
本届大赛由微软必应词典冠名,必应词典(http://cn.bing.com/dict/?form=BDVSP4&mkt=zh-CN&setlang=ZH)是微软推出的新一代英语学习引擎,里面收录了很多我们常见的单词。但现实生活中,我们也经常能看到一些毫无规则的字符串,导致词典无法正常收录,不过,我们是否可以从无规则的字符串中提取出正规的单词呢? 例如有一个字符串"iinbinbing",截取不同位置的字符‘b’、‘i’、‘n’、‘g’组合成单词"bing"。若从1开始计数的话,则‘b’原创 2014-01-07 22:05:35 · 1043 阅读 · 0 评论 -
子序列的个数(解)--【英雄会】
本题同样来自caopengcs,只要你有兴趣,每个人都可以出题(出题入口在主页右侧边栏“贡献题目”->“我要发布”内),以下是题目详情:子序列的定义:对于一个序列a=a[1],a[2],......a[n],则非空序列a'=a[p1],a[p2]......a[pm]为a的一个子序列,其中1<=p1<p2<.....<pm<=n。 例如:4,14,2,3和14,1,2,3都为4,13,14,1,2,3的子序列。 对于给出序列a,有些子序列可能是相同的,这里只算做1个,要求输出a的不同子序列的数量。原创 2014-01-07 23:39:37 · 1077 阅读 · 0 评论 -
整数取反,人人code--英雄会
题目很简单,完成函数reverse,要求实现把给定的一个整数取其相反数的功能,举两个例子如下: x=123,return321 x=-123,return-321 如题,这题目很简单,就不跟小伙伴们废话了,在英雄会上判定也是一个一星的题而已,入门... 将一个整数按照我们的常规思路 不断取余,再舍弃尾数,这样录入得到各个位数的值,再将其反转,最后将之前是否有负号重新补上;原创 2013-12-20 21:03:59 · 1155 阅读 · 0 评论 -
建立信号基站【解】--英雄会
建立信息基站:要建立一个信号基站服务n个村庄,这n个村庄用平面上的n个点表示。假设基站建立的位置在(X,Y),则它对某个村庄(x,y)的距离为max{|X – x|, |Y – y|}, 其中| |表示绝对值,我们的目标是让所有村庄到信号基站的距离和最小。 基站可以建立在任何实数坐标位置上,也可以与某村庄重合。原创 2013-12-21 23:57:38 · 1368 阅读 · 0 评论 -
理想随机数发生器【解】--英雄会
一个理想随机数发生器R,给定参数正整数x,它可以均匀随机产生一个闭区间[0,x]之间的实数(注意是实数,每个实数出现的概率相同)R(x)。现在给定3个正整数a,b,c,我们使用a,b产生两个随机实数R(a), R(b),问R(a) + R(b) 正整数均不超过10000 输出: R(a) + R(b) 注意输出是一个有理数(分数),请化为最简分数。(分子分母的最大公约数是1)。原创 2013-12-21 15:31:09 · 919 阅读 · 0 评论 -
罐子与硬币--【英雄会】
好久没来英雄会了,所以今天来看看几题,看到“罐子与硬币”这一题不错,这种题目比较适合我的味道,不过,可惜啊...性子太急,分没到手...题目如下:有n个罐子,有k个硬币,每个罐子可以容纳任意数量的硬币。罐子是不透明的,起初你可以随机把这k个硬币任意放在罐子里。然后罐子被打乱顺序,你从外表无法区别罐子。最后罐子被编上号1-n。你有p次机会,每次你可以选择某个罐子,如果该罐子里有硬币,则你可以得到1个(你不可以知道该罐子里有多少硬币),如果该罐子是空的,你得不到任何硬币。你最终要得到至少c枚硬币,我们的问原创 2014-01-28 19:53:26 · 2098 阅读 · 4 评论 -
报数游戏(3)--【英雄会】
回来也十天了,中间各种私事,包括替看店等等...不过现在终于有着较大段时间逛逛英雄会了,最近题目出了数道,当然难度也是比较适合的,二星、三星的我还勉强可以一做...废话不多言,说题目吧:一种报数游戏是从1开始连续报数,如果报到7的倍数(7,14,21,28……)或者包含数字7的数(7,17,27,37……)就用拍手代替这个数而不能报出。假设你连续听到m声拍手,问造成你听到m声拍手的第一下拍手所代表的数是几?例如,你听到了两次连续的拍手,最小的可能这两次拍手是27和28,因此输出27。输入m, 输出这m原创 2014-01-28 12:01:14 · 3883 阅读 · 0 评论 -
分巧克力 - 湖北民族学院提供--【英雄会之高校俱乐部】
经常去英雄会逛逛倒是不假,但是很少去高校俱乐部,因为这两边的题目有部分相同,hero那边难度可能稍微高一点,不过今天倒是逛了一下,被一个一星的来了个当头一棒...题目很简单:儿童节快到了,班长想要给班上的每个同学给一个巧克力,巧克力的形状是一个宽为2,长为n的长方形,由于巧克力太贵,班长就想把这个大块的巧克力分成许多 1*2(宽*长)的小块巧克力,这样每个人都能得到一份1*2的巧克力,现在给定巧克力的长为正整数n(1<=n<=91),请你判断对于这 个2*n的巧克力有多少种不同的分法? 相信很多人第一原创 2014-01-31 21:18:36 · 1823 阅读 · 0 评论 -
报数游戏(2)--【英雄会】
新年快乐!送上蛇年的最后一篇博客,迎接马年...N个人(编号1-N),站成一排,进行报数游戏。报数过程可能进行很多轮,有如下规则: (1) 如果剩余人数不超过3个人,则游戏结束。 (2) 大家报数,然后留下报奇数的人从第一个人继续游戏,或者留下报偶数的人继续游戏。 重复如此(1)(2)两步骤,到游戏结束。 问:最终剩下的三人组有多少种情况?(注意是三人组,例如如果最后剩下2个或者1个人,不计入结果中)。 输入n, (0<n<=10000000) ,输出最终结果。原创 2014-01-30 16:35:32 · 2249 阅读 · 6 评论 -
坐标与数字--【英雄会】
回到学校,一切显得自由多了,今天看到一道题,“坐标与数字”,通过率接近80%,在此分享一下自己的拙作...如题:如图所示,我们从0开始把整数写在两条直线上,0, 1, 2, 3分别写在(0,0), (1,1), (2,0)和(3, 1)这4点上,如图规律继续写下去。 现在给定坐标(x,y),问(x,y)位置的整数是多少,如果这个位置不存在整数,输入-1。其中, 0<=x,y<=1100。原创 2014-02-24 16:42:17 · 1343 阅读 · 0 评论 -
杨辉三角的变形【解】--英雄会
今天看到一个有趣的题目: 1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 1 以上三角形的数阵,第一行只有一个数1, 以下每行的每个数,是恰好是它上面的数,左上的数和右上数等3个数之和(如果不存在某个数,认为该数就是0)。求第n行第一个偶数出现的位置。如果没有偶数,则输出-1。例如输入3,则输出2,输入4则输出3。 输入n(n <= 1000000000)原创 2013-12-23 23:31:46 · 1660 阅读 · 0 评论 -
倒水问题--英雄会
先看看题目:有两个容器,容积分别为A升和B升,有无限多的水,现在需要C升水。 我们还有一个足够大的水缸,足够容纳C升水。起初它是空的,我们只能往水缸里倒入水,而不能倒出。 可以进行的操作是: 把一个容器灌满; 把一个容器清空(容器里剩余的水全部倒掉,或者倒入水缸); 用一个容器的水倒入另外一个容器,直到倒出水的容器空或者倒入水的容器满。 问是否能够通过有限次操作,使得水缸最后恰好有C升水。原创 2013-12-23 13:47:06 · 1144 阅读 · 0 评论 -
数组排序【解】--英雄会
如题:本题来自caopengcs,只要你有兴趣,每个人都可以出题(出题入口在主页右侧边栏“贡献题目”->“我要发布”内),以下是题目详情: 给定一个包含1-n的数列,我们通过交换任意两个元素给数列重新排序。求最少需要多少次交换,能把数组排成按1-n递增的顺序,其中,数组长度不超过100。 例如: 原数组是3,2,1, 我们只需要交换1和3就行了,交换次数为1,所以输出1。 原数组是2,3,1,我们需要交换2和1,变成1,3,2,再交换3和2,变为1,2,3,总共需要的交换次数为2,所以输出2。原创 2013-12-29 20:15:29 · 936 阅读 · 0 评论 -
均分01【解】--英雄会
给定一个字符串,长度不超过100,其中只包含字符0和1,并且字符0和1出现的次数都是偶数。你可以把字符串任意切分,把切分后的字符串任意分给两个人,让两个人得到的0的总个数相等,得到的1的总个数也相等。 例如,输入串是010111,我们可以把串切位01, 011,和1, 把第1段和第3段放在一起分给一个人,第二段分给另外一个人,这样每个人都得到了1个0和两个1。我们要做的是让切分的次数尽可能少。 输入是这样一个字符串,输出是最少的切分次数,保证输入合法。 注:题目一定有解,因为我们最差情况时,原创 2013-12-30 13:13:08 · 1929 阅读 · 2 评论 -
[序]最长有效括号的长度-动态规划--英雄会
Pongo英雄会:给定只包含括号字符'('和 ')''的字符串,请找出最长的有效括号内子括号的长度。举几个例子如下: 例如对于"( ()",最长的有效的括号中的子字符串是"()" ,有效双括号数1个,故它的长度为 2。 再比如对于字符串") () () )",其中最长的有效的括号中的子字符串是"() ()",有效双括号数2个,故它的长度为4。 再比如对于"( () () )",它的长度为6。原创 2013-12-20 14:34:41 · 1439 阅读 · 0 评论 -
回文字符串<交流>--英雄会
回文字符串是指从左到右和从右到左相同的字符串,现给定一个仅由小写字母组成的字符串,你可以把它的字母重新排列,以形成不同的回文字符串。 输入:非空仅由小写字母组成的字符串,长度不超过100; 输出:能组成的所有回文串的个数(因为结果可能非常大,输出对1000000007取余数的结果)。 例如:输入"aabb" 输出为2(因为“aabb”对应的所有回文字符串有2个:abba和baab)原创 2013-12-23 16:04:42 · 1047 阅读 · 0 评论 -
字符串消除--【英雄会】
给定一个字符串,仅由a,b,c 3种小写字母组成。当出现连续两个不同的字母时,你可以用另外一个字母替换它,如 有ab或ba连续出现,你把它们替换为字母c; 有ac或ca连续出现时,你可以把它们替换为字母b; 有bc或cb 连续出现时,你可以把它们替换为字母a。 你可以不断反复按照这个规则进行替换,你的目标是使得最终结果所得到的字符串尽可能短,求最终结果的最短长度。 输入:字符串。长度不超过200,仅由abc三种小写字母组成。输出: 按照上述规则不断消除替换,所得到的字符串最短的长度。 例如:原创 2014-01-03 17:07:11 · 843 阅读 · 0 评论 -
最长有效括号的长度--英雄会
第一次博客,大家将就下...给定只包含括号字符'('和 ')''的字符串,请找出最长的有效括号内子括号的长度。 举几个例子如下: 例如对于"( ()",最长的有效的括号中的子字符串是"()" ,有效双括号数1个,故它的长度为 2。 再比如对于字符串") () () )",其中最长的有效的括号中的子字符串是"() ()",有效双括号数2个,故它的长度为4。 再比如对于"(原创 2013-12-19 23:22:43 · 781 阅读 · 0 评论 -
字符串的完美度--英雄会<高校俱乐部>
我们要给每个字母配一个1-26之间的整数,具体怎么分配由你决定,但不同字母的完美度不同, 而一个字符串的完美度等于它里面所有字母的完美度之和,且不在乎字母大小写,也就是说字母F和f的完美度是一样的。 现在给定一个字符串,输出它的最大可能的完美度。 例如:dad,你可以将26分配给d,25分配给a,这样整个字符串最大可能的完美度为77。 函数头部 C int perfect(const char *s); C++ int perfect(const string &s); java public static原创 2013-12-23 13:17:14 · 1120 阅读 · 0 评论 -
寻找直方图中面积最大的矩形--英雄会
直方图中面积最大的矩形:给定直方图,每一小块的height由N个非负整数所确定,每一小块的width都为1,请找出直方图中面积最大的矩形。 如下图所示,直方图中每一块的宽度都是1,每一块给定的高度分别是[2,1,5,6,2,3]; 那么上述直方图中,面积最大的矩形面积 = 10单位。原创 2013-12-20 18:15:13 · 898 阅读 · 0 评论 -
最小操作次数的简易版【解】--英雄会
英雄会:给定两个字符串,仅由小写字母组成,它们包含了相同字符。 求把第一个字符串变成第二个字符串的最小操作次数,且每次操作只能对第一个字符串中的某个字符移动到此字符串中的开头。 例如给定两个字符串“abcd" "bcad" ,输出:2,因为需要操作2次才能把"abcd"变成“bcad" ,方法是:abcd->cabd->bcad。原创 2013-12-21 12:53:15 · 2200 阅读 · 6 评论 -
二十进制数的加法--【英雄会】
今天晚上看到群里面交流的信息,发现又出新题了,看了一下,难度还可以,不过一会儿就由三星难度降为二星了...有兴趣的朋友们可以去英雄会......如题:在二十进制中,我们除了使用数字0-9以外,还使用字母a-j(表示10-19),给定两个二十进制整数,求它们的和。 输入是两个二十进制整数,且都大于0,不超过100位;输出是它们的和(二十进制),且不包含首0。我们用字符串来表示二十进制整数。 总的来说,这一题难度还可以,只要注意点没忘记,大家应该都是没问题的;首先是简单的两个数相加“122”原创 2014-01-06 22:26:26 · 1169 阅读 · 0 评论 -
三角形的内切圆和外接圆--【英雄会】
这个题目有一段时间了,不过当时正在准备考试,纵使有心刷题,奈何佛脚得抱,后来又被撤了,所以拖至今天...如题:一个三角形必然存在它的内切圆与外接圆,求他们的面积比。考虑到精度问题,我们输出面积比*1000的整数部分(直接下取整)。 输入数据是一个三角形的三个顶点,但这三个顶点在三维空间中,所以输入是9个整数,分别表示三个顶点(x1,y1,z1) (x2,y2,z2) (x3,y3,z3),保证三点不共线,每个整数在-1000,+1000范围内。 输出内接圆与外切圆的面积比*1000的整数部分。原创 2014-02-18 22:26:10 · 2078 阅读 · 0 评论