- 博客(9)
- 收藏
- 关注
原创 蓝桥 分巧克力(二分)
问题描述 儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。 为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足: 1. 形状是正方形,边长是整数 2. 大小相同 例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。 当然小朋友们都希...
2018-03-22 21:10:20
272
原创 蓝桥杯 数字游戏
问题描述 栋栋正在和同学们玩一个数字游戏。 游戏的规则是这样的:栋栋和同学们一共n个人围坐在一圈。栋栋首先说出数字1。接下来,坐在栋栋左手边的同学要说下一个数字2。再下面的一个同学要从上一个同学说的数字往下数两个数说出来,也就是说4。下一个同学要往下数三个数,说7。依次类推。 为了使数字不至于太大,栋栋和同学们约定,当在心中数到 k-1 时,下一个数字从0开始数。例如,当k=13时,栋栋和同...
2018-03-22 20:44:02
551
原创 蓝桥杯 士兵排队问题(拓扑排序)
试题 有N个士兵(1≤N≤26),编号依次为A,B,C,…,队列训练时,指挥官要把一些士兵从高到矮一次排成一行,但现在指挥官不能直接获得每个人的身高信息,只能获得“P1比P2高”这样的比较结果(P1、P2∈A,B,C,…,Z,记为 P1>P2),如”A>B”表示A比B高。 请编一程序,根据所得到的比较结果求出一种符合条件的排队方案。 (注:比较结果中没有涉及的士兵不参加排队)输入...
2018-03-12 19:23:44
1227
原创 操作格子(线段树)
操作格子问题描述有n个格子,从左到右放成一排,编号为1-n。共有m次操作,有3种操作类型:1.修改一个格子的权值,2.求连续一段格子权值和,3.求连续一段格子的最大值。对于每个2、3操作输出你所求出的结果。输入格式第一行2个整数n,m。接下来一行n个整数表示n个格子的初始权值。接下来m行,每行3个整数p,x,y,p表示操作类型,p=1时表示修改格子x的权值为y,p=2时表示求区间[x,y]内格子权...
2018-03-12 15:49:25
198
原创 Have Fun with Numbers(大数相加)
Have Fun with Numbers Notice that the number 123456789 is a 9-digit number consisting exactly the numbers from 1 to 9, with no duplication. Double it we will obtain 246913578, which happens to be anot...
2018-03-12 10:30:20
247
原创 国王的烦恼 (最小生成树)
问题描述 C国由n个小岛组成,为了方便小岛之间联络,C国在小岛间建立了m座大桥,每座大桥连接两座小岛。两个小岛间可能存在多座桥连接。然而,由于海水冲刷,有一些大桥面临着不能使用的危险。 如果两个小岛间的所有大桥都不能使用,则这两座小岛就不能直接到达了。然而,只要这两座小岛的居民能通过其他的桥或者其他的小岛互相到达,他们就会安然无事。但是,如果前一天两个小岛之间还有方法可以到达,后一天却不能到达...
2018-03-11 16:53:50
471
原创 A+B in Hogwarts(进位加法)
1058. A+B in HogwartsIf you are a fan of HarryPotter, you would know the world of magic has its own currency system -- asHagrid explained it to Harry, "Seventeen silver Sickles to a Galleon andtwenty-...
2018-03-11 16:07:31
278
原创 二分入门
DescriptionThe SUM problem can be formulated as follows: given four lists A, B, C, D of integer values, compute how many quadruplet (a, b, c, d ) ∈ A x B x C x D are such that a + b + c + d = 0 .
2017-11-11 19:39:40
250
原创 A^B(A的B次方)——人见人爱A^B,Rightmost Digit 。
写一个pow()函数计算A的B次方取余10,即求所得结果的个位数。int pow(int a, int b){ if(b==0) return 1; int half = (pow(a,b>>1))%10; if(b%2==0) return (half*half)%10; else return (half*half*a)%101;
2017-08-29 15:44:02
571
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人