成都东软学院2016年ACM冬季校赛正式赛 - 题解

Problem A: 数组的价值

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 121   Solved: 4
[ Submit][ Status][ BBS]

Description

数组A包含N个元素A1, A2......AN。数组B包含N个元素B1, B2......BN。并且数组A中的每一个元素Ai,都满足1 <= Ai <= Bi。数组A的代价定义如下:

 

(公式表示所有两个相邻元素的差的绝对值之和)

给出数组B,计算可能的最大代价S。

Input

每组数据第1行:1个数N,表示数组的长度(1 <= N <= 100000)。

 

2行:有N个数分别对应数组元素Bi(1 <= Bi <= 10000),以空格隔开。

 

多组输入。

Output

对于每组数据输出最大代价S,占一行。

Sample Input

5
1 5 1 5

Sample Output

16


题目意思:给你一个n个数的B数组,现在我们定义A数组为对于A[i]<=B[i] (即A数组与B数组长度相同,并且对因位置上的数A[i] <= B[i] ),现在定义A数组的代价为

 |A[i+1]-A[i] | (2=< i <=n) 的和 ,问最大代价是多少?


题目思路:首先如果这题暴力做的话时间复杂度非常大,然后考虑怎么优化时间复杂度,因为绝对值的和最大,所以可以推得当取极大极小值时绝对值和最大,所以关键是哪几个数取极大,哪几个数取极小时和最大,考虑第i个数的状态可以是极大或极小,所以可以用 dp [ i ] [ 2 ] dp [ i ] [ 0 ] 表示第i位取极小值 dp [ i ] [ 1 ] 表示第i位取极大值 所以可以得出转移方程 :

        dp [ i ] [ 0 ] = max( dp [ i - 1 ] [ 0 ] + abs( 1 - 1 ) , dp [ i - 1 ] [ 1 ] +abs( 1 - s[ i - 1 ] ) );
        dp [ i ] [ 1 ] = max( dp [ i - 1 ] [ 0 ] + abs( s[ i ] - 1 ),dp [ i - 1 ] [ 1 ] + abs( s[ i ] - s[ i - 1 ] ) );  ( i >= 2 ) 


AC代码:最后


Problem B: 蜡烛

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 157   Solved: 55
[ Submit][ Status][ BBS]

Description

平安夜快到了,小君寒打算摆蜡烛来过一个浪漫的平安夜。

小君寒一共有a支蜡烛,当他点亮一支蜡烛时,这支蜡烛可以燃烧1小时,然后就熄灭了,就是说,每只蜡烛只可以燃烧一小时。但是小君寒是非常聪明的,他能够将b支已经燃烧过的蜡烛变成一支新的蜡烛,这支蜡烛和全新的蜡烛一样可以使用。

现在小君寒想知道他的蜡烛最多能够燃烧多少小时,请聪明的你来帮他计算一下。

Input

测试数据包含多组。

每组数据只有一行,包含两个整数a和b(1≤a≤1000;2≤b≤1000)。

Output

请输出一个整数,代表蜡烛最多能够燃烧多少小时。

Sample Input

4 2
6 2

Sample Output

7
11

HINT

对于第一组数据,最开始的4支蜡烛可以燃烧4小时,这4支燃烧后的蜡烛可以构成2支全新的,这2支蜡烛燃烧后又可以构成1支蜡烛,所以结果是4+2+1=7。


题目思路:给你a支蜡烛,没支蜡烛可以燃烧1小时,b支燃烧过的蜡烛可以重新变成一支没有没有燃烧的蜡烛,问最多可以燃烧多少个小时

题目思路:和换汽水的题相似,,但是这个不能借,所以可以循环搞定,每次 燃烧a支后a就变成了a/b+a%b   , 然后统计燃烧的时间 ,当a


AC代码:最后

Problem C: TaiL Odd

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 30   Solved: 1
[ Submit][ Status][ BBS]

Description

Chengdu Neusoft University, founded and organized by Neusoft Corporation and Yida Group, is one of the full-time undergraduate institutions approved by the Ministry of Education. CNU runs its education programs with a main focus on engineering and a minor in management and arts. Besides, CNU is also the State Cultivation Base of IT Talents, China Torch Program Chengdu Digital Entertainment Industry (Talent Training) Park and China Digital Media Industry (Talent Training) Park.

 

CNU is located in the World Cultural Heritage—scenic spot of Dujiangyan and Qingcheng Mountain, Chengdu, and covers an area of nearly 400 thousand square meters with a floor area of 160 thousand square meters. Currently, more than 5,000 students are studying in our university. With the perfect combination of science and technology, nature and culture, the campus in the style of western Sichuan garden provides a good learning environment for students at home and abroad.

 

In order to give the most advanced modern IT education for students, CNU integrated educational resources of Neusoft Corporation, nationwide-distributed Neusoft Parks with the cooperative business partners at home and abroad and adopted an internationalized teaching mode. Besides, CNU has already built academic exchange and cooperation and started educational programs with numerous famous colleges in United States, Britain and Japan, etc. Now CNU also has established educational cooperation with notable multinational IT Corporations such as IBM, SUN, SKILLSOFT, BEA, SAP, HP, Cisco, Toshiba and Panasonic, etc. TaiL is a student at Chengdu Neusoft University.

 

TaiL have a sequence of consecutive odd numbers, This sequence starts with 1, Such as 1357911131517....Given a n and k, n is an odd number at the end of the sequence.

Input

Given a n and k, n is an odd number and is the last number.(n<=10^12,k

Output

You can print How many bits are there in this sequence and what is the kth bits num.

Sample Input

21 13

Sample Output

17 7

HINT

Huge input, 70%  of test cases have 100, 30% of test cases have 200000.


题目思路:给你n(奇数)和k  n表示1 - n的奇数 即 1 3 5 7 9 11 13 15 ,,,,,,,n  然后这些数字排成一行当成一个字符串 即 1357911131517,,,,,n  求字符串的第k个数是什么


题目思路: 这题最好想到的就是 1 - 10 有5个数 1 - 100 50个  1 - 1000 500个  ,,,,,,依次类推  然后就可以判断第k个数位于哪个区间,最后就可以找到第k个属于哪个数,

因为区间内的数的长度都相同,然后就可以求出答案了 


AC代码:最后



Problem D: 三个臭皮匠

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 263   Solved: 74
[ Submit][ Status][ BBS]

Description

都说三个臭皮匠能比得上一个诸葛亮,现在就给你三个臭皮匠的价值,让你计算他们的价值和。

Input

分别输入三个整数表示三个臭皮匠的价值a,b,c(0<=a,b,c<=10^9)用空格隔开,多组输入。

Output

每组数据输出一个整数等于a+b+c,占一行。

Sample Input

1 1 1
2 2 2

Sample Output

36


题目思路:给你三个数求三个数的和 long long


AC代码:最后

Problem E: 不同的石头

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 154   Solved: 39
[ Submit][ Status][ BBS]

Description

在桌子上有n个石头排成一行,这些石头可能为红色,绿色,蓝色。现在小君寒想拿走一些石头来让任意的两个相邻的石头的颜色都不一样,如果两个石头中间没有其它石头,这样就认为它们两个是相邻的。现在请问他最少需要拿走多少石头。

Input

测试数据包含多组输入。

每组数据第一行有一个正整数n (1≤n≤50),代表有多少个石头。

第二包含一个字符串s,代表石头的位置和颜色,第i个石头颜色为s[i]。s[i]可能为R、G或B,分别代表红色,绿色,蓝色。

Output

输入一个整数n,代表小君寒最少需要拿走多少石头。

Sample Input

3
RRG
5
RRRRR
4
BRBG

Sample Output

1
4
0

题目大意:给你n个字符只含有BGR 问最少去掉多少个字符使得相邻两个字符不能相同


题目思路:这题显然是删除连续多个相同字符的个数减一 最简单的做法就是用 i 指向第1个字符 j 指向第二字符 然后向后移动 j 当str [ j ] = str [ i ] 时 删除 str [ j ] 不同时 i = j  直接for循环就可以了,,这种指针的方法很常用,以后经常会用到


AC代码:最后


Problem F: 又见石头

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 136   Solved: 37
[ Submit][ Status][ BBS]

Description

一大早,阳光明媚,蓝蓝的天,白白的云,鸟儿在老槐树上欢快地哼着歌儿,微风抚在脸上,建建左手托着下巴,右手敲打着窗台上的石头(虽然他是在教室,但心早已飞出去和鸟儿一起歌唱了),这些石头是一字排开的,从左到右依次编号为1,2,3....n,我们假设建建无聊敲石头玩儿的时候每次心里会默念2个数字a和b(a<=b),然后就会从石头a开始到石头b依次敲打每个石头,但是n次以后建建忘记了每个石头被他敲打了几次,你能帮他算出每个石头被敲打过几次吗?

Input

输入包含多组数据,每组测试数据第一行为一个正整数n,(n <= 7000),接下来的n行,每行包括2个整数b(1 <= a <= b <= n)。当n = 0时,输入结束。

Output

每组测试数据输出一行,包括n个整数,第i个数代表第i个石头总共被敲打的次数。

Sample Input

3
1 1
1 2
1 3
4
1 1
2 2
3 3
4 4
0

Sample Output

3 2 1
1 1 1 1


  题目大意:给你n个石头 (编号1-n)有n次操作 ,每次操作输入 a b两个数表示 从第a个石头到第b个石头依次敲一下 ,问n次操作后每块石头分别被敲了多少次

  题目思路:一开始没看数据范围以为是线段树区间更新 ,,其实可以定义一个数组 初始化为0  每次操作从a循环到b加一 最后在输出就是,注意初始化


AC代码:最后


Problem G: 矩阵

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 58   Solved: 23
[ Submit][ Status][ BBS]

Description

技巧?算法?奇思妙想?NO!本题定位仅仅在于单纯敲代码,所以~~~

来看题意吧,有一个n*n的矩阵(n为奇数),我们要把矩阵填满(即填n*n个数字进去,数字从1到n*n),填数字的方法是:

在第一行的中间位置填1,然后在这个位置的右上方填2,也就是下一个要填的位置是在上一个位置的右上方,若下一个位置越出了矩阵,则跳转到另一端,依次类推,而且,若某个元素的右上方已经填有数字,则转填在这个元素的正下方,直到把矩阵填满为止。如下图所示:

                                                                                                 

Input

输入包含多组测试数据,每次输入一个n(n为奇数且1<=n<=101),表示矩阵大小是n*n。

Output

每组测试数据产生一个结果,结果便是填满的矩阵,请你输出它。矩阵每一行独占一行,每个矩阵之间空一行。

Sample Input

3
7

Sample Output

8 1 6
3 5 7
4 9 2

30 39 48 1 10 19 28
38 47 7 9 18 27 29
46 6 8 17 26 35 37
5 14 16 25 34 36 45
13 15 24 33 42 44 4
21 23 32 41 43 3 12
22 31 40 49 2 11 20



题目思路:给你一个n 按照题目的思路输出一个n*n的矩阵


题目思路 : 其实就是每行每列两个对角线加起来都相等,,直接按照题目的方法模拟  定义一个二维数组  先第一行中间的数填1 然后while循环从2到n*n填数 用x,y表示当前填数的坐标 填第一个数 时  x= 0  y =n/2  然后循环 题目说填当前数的右上角,当上面越界时跳到最下面 这里可以用 i =  ( i - 1 + n ) % n  j = ( j + 1 ) % n  处理  当这个位置填了数就是直接 i = ( i + 1 ) % n  最后在输出


AC代码:最后


Problem H: Easy as pie

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 50   Solved: 11
[ Submit][ Status][ BBS]

Description

I believe that it is mysterious for everyone how to calculate the time of Online Judge ranking! Now, Mosquito is very upset, she would like to know how to calculate her rank time.Come on and help her calculate it! OK, Let's simply simulate the calculation process.

When Mosquito passes a problem,We just need to know that how long the contest has being on(1 <= T <= 300)and the number of times she wrongs before doing it. The  rules are as follows:

1.If Mosquito first tries problem A, and she passes it when the contest has being on t1 minutes at the first time, then time will be t1 minutes.

2.If Mosquito goes to try problem B, and she passes it again when the contest has being on t2 minutes, then time will be (t1 + t2)minutes.That is to say,time is the implement of cumulative timing.

3.If Mosquito passes some a problem with errors before submission, every error will be fined 20 minutes. For example, if Mosquito tries  problem C and wrongs twice, and the third passes it when the contest has being on t3 minutes, then time becomes(t1 + t2 + 20 * 2 + t3)minutes.

4.If Mosquito has been trying problem D, but is failed,then this will not produce a penalty.In other words,time is still(t1 + t2 + 20 * 2 + t3)minutes.

Assume that Mosquito is smart enough to pass a problem and would not resubmit the same problem.

Input

The total number of Mosquito submitted (1 <= N < = 100), the next N lines.

Each line has a character ('A' <= Tid <= 'L'), string (S) and integer (1 < = T < = 300). indicating the title number. judge the results and time of submission, guarantee the time in increasing sequence

Output

Mosquito passed the number of problem (num), and Penalty (t)

Sample Input

7
A Accepted 3
B Accepted 5
C WrongAnswer 11
D Accepted 15
E PresentationError 16
C Accepted 230
F MemoryLimitExceeded 259

Sample Output

4 273

HINT


Among the judge result Accepted, PresentationError, WrongAnswer,  TimeLimitExceeded, MemoryLimitExceeded, OutputLimitExceeded,  RuntimeError and CompileError, none of them are considered as  correct except Accepted.


In the test case, Penalty = 3 + 5 + 15 + 20 + 230 = 273


题目大意:给你n次oj的提交记录 根据题目描述计算总时间 AC过的题目的时间 + AC过得题的错误次数*20 加起来


题目思路:这题其实就是oj计算时间的算法,因为只有12道题,所以只需开个12个空间的数组就够了,只需用题目编号的字符减去 'A' 就可转换为0 - 11  然后在开一个计算时间的数组和一个是否AC的数组还有一个错误次数的数组  所以每次输入时 先判断是否AC了,,AC了就continue 没有 判断后面的是 "Accepted" 还是其他的 其他的就改题wa的次数加以否则就标记改题AC了,并记下AC的时间  然后最后只需把所有AC的题目的时间 + 错误的次数*20 加起来 


AC代码:最后




Problem I: 做我自己

Time Limit: 2 Sec   Memory Limit: 128 MB
Submit: 29   Solved: 1
[ Submit][ Status][ BBS]

Description

n个整数。输出他之中和x相与之后结果为x的有多少个。x从0到m

Input

每组数据第一行输入一个整数n。(1<=n<=1000000).

 

第二行有n个整数a[0],a[1],a[2],...a[n-1]以空格分开(0<=a[i]<=1000000)。

 

第三行输入一个整数m。(1<=m<=1000000)。

 

多组输入。

Output

对于每一组数据,输出m+1行,第 i 行对应和 i 相与结果是 i 的有多少个数字。

Sample Input

3
2 3 3
5

Sample Output

3
2
3
2
0
0


题目大意:给你n个数 和一个m 问 n个数中 与 x(0<=x<=m)与运算后等于x的个数 分别输出 输出m+1个数 


题目思路:比赛时没想通,,其实仔细想想这题放在黑色气球不应该 ,,我的第一反应就是字典树,其实就是字典树,不过要进行特殊处理!  我们只需考虑x的二进制位中为1的位,只有当与其对应1位置上的也是1就可以了。我们可以 把 n 个数都转换成二进制(用数组记录),然后用另一个数组记录二进制数组中为1的位数 ,为0的不用考虑 ,然后在以这二进制1的位置的数组进行字典树存,因为只有1000000 所以20位就可以了,即建树时只需 next[20] 就可以了,最后用同样的方法将x转换,然后在字典树中查询就可以了


AC代码:最后


Problem J: 蜡笔小新

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 35   Solved: 3
[ Submit][ Status][ BBS]

Description

小新是一个年仅5岁,正在幼儿园上学的小男孩。他内心早熟,喜欢欣赏并向美女搭讪。最初小新与父亲广志和母亲美伢组成一个三人家族。随后又添加了流浪狗小白,日子频繁琐碎却不乏温馨感动。随着故事展开,又加入了新的成员小新的妹妹。

野原新之助,是美伢、广志之子。住在春日部郊区某住宅区一栋二层小平房。B型。喜欢漂亮的姐姐和辣妹。性格是我行我素。

野原美伢,家庭主妇(职业)广志之妻,小新之母,好面子,不认输,善良。脾气暴躁(对帅哥很温柔),做得一团糟、犯错有时死不承认,弱点是受不了别人的甜言蜜语。

野原广志,年龄:35岁。秋田出身。脚有异常的气味。每天,公司里忙于工作,在家里新之助和美伢怎么任意驱使,稍微疲劳方式。但是是家里的顶梁柱。

野原小白,是被抛弃的弃狗,后来被小新捡回家。

这天,小新的妹妹快要出生了,因为他们家很受欢迎,所以很多很多的人都寄 了自己给这个小妹妹取的名字(蜜汁英文),这些名字有很多相同的后缀。

小新对于这些名字非常感兴趣,因此就将这些名字拿来与风间玩游戏。首先他拿出n个名字,接着问风间m次。每次包含一个字符串s和两个数字a和b。意思是让s与所有名字一一匹配,求出能匹配上的个数。匹配的规则是s的后缀与名字的后缀前a个相同但对于前b个是不同的。因为我们的风间兄要去参加英文补习了,所以他就请你来回答这些问题。

Input

测试数据包括多组

每组首先一个正整数n(n<=3000),代表名字的个数,再一个正整数m(m<=10000),代表询问次数

接下来n行,每行一个字符串,仅包括小写字母且长度大于0小于201

然后m行,每行一个字符串s,仅包括小写字母且长度大于0小于201,两个正整数a与b(0

Output

每组数据有m个整数,每行一个,代表的是s能匹配的上的个数

Sample Input

3 2
dde
ccde
abcde
abcde  2 4
abcde 3 4

Sample Output

2
1

HINT

样例中询问字符串abcde和前面的名字dde、ccde的后缀de是相同的,所以可以匹配。而名字abcde虽然也有de,但是它的后缀bcde与询问字符串abcde的后缀bcde这四个也相同,所以不能匹配



题目大意:给你n个字符串,m次查询,每次查询输入一个字符串 和 两个数 a,b,查询n个字符串的后缀 与输入的字符串后缀的前a个相同,前b个不同的个数


题目思路:这题是最坑的,,他给的数据是a,b可以>len 而题目说是a,b<=len 所以我们的做法一直wa就因为数组越界了,,,这题只需把n个字符串倒着存建字典树,然后倒着查找输入的字符串只需后缀的前a个和前b个分别存起来进行查询,答案就是前a匹配的个数减去前b个匹配的个数  当然先特判 a>=b时输出0  因为前a个匹配了,b<=a时前b个一定匹配,所以就不存在,,这种算法的正确性是:前a个匹配的一定包含了前b个匹配的(a


AC代码:最后


Problem K: 刺客信条

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 11   Solved: 1
[ Submit][ Status][ BBS]

Description

刺客Ezio(艾吉奥)是意大利文艺复兴时期的佛罗伦萨贵族,在目睹父兄被圣殿骑士所害后继承了父亲乔瓦尼·奥迪托雷的刺客衣钵,最终成长为刺客组织历史上继先驱阿泰尔后的又一位伟大刺客导师。接着艾吉奥重建了罗马刺客兄弟会,成功击垮了当时在罗马以波吉亚家族为首的圣殿骑士团,并巩固了刺客组织在意大利的势力。最后,晚年的艾吉奥与妻子和一双儿女回到故乡佛罗伦萨隐居后。艾吉奥帮助来自遥远东方中国明朝的女刺客邵云摆脱明朝圣殿骑士的追捕,并在思想上让邵云更好地理解了刺客信条的真义。不久之后陪同妻儿到佛罗伦萨。坐在圣母百花大教堂前,望着曾经家人们死去的广场,带着微笑向后靠去,安祥地去世。一代刺客大师就此陨落。

Ezio有一次执行任务时被困在一个迷宫里面了,这个迷宫是古代的著名的建造大师兼数学大师建造的,所以机关都是数学题:给你n个正整数,然后是m个询问,每个询问有两种操作:

第一种  1 a b c d:意思是首先将[a,b]区间内的每个数字平方,接着询问[c,d]的区间和,最后将[a,b]区间内的数字开平方跟

第二种  2 a b c :意思是将区间[a,b]内的数字都加上c

但是Ezio并不是数学天才,所以他就找到了聪明的你。

Input

测试包括多组数据

每组数据首先一个正整数n(n <= 100000)代表数字个数,再一个正整数m(m <= 100000)

接着n个数字,每个数字x(-100 <= x <= 100)

然后是m行,每行有两种格式:

1 a b c d:保证(1 <= a <= b <= n)且(1 <= c <= d <= n)

2 a b c:保证(1 <= a <= b <= n)且(-10 <= c <= 10)

Output

对于每个“1 a b c d”,输出一行数字代表区间和

Sample Input

5 3
1 2 3 4 5
1 1 3 1 3
2 1 3 1
1 1 3 1 3

Sample Output

14
29


题目大意:给你n个数m次查询 每次查询分两种操作 1 a b c d 先将区间[ a , b ]的数平方  再输出 区间 [ c , d ]的和 再将 区间[ a , b ]的数开根号  :

                                                                                      2 a b c  将区间[ a , b ]的数加c

题目思路:应为每次 1 操作时先平方后再开根号相当于又回到原来的状态,所以考虑用两个线段树维护,一个维护加一操作的线段树,一个维护平方开根号的线段树,将每次查询的区间分成两部分,在平方数内的区间和不在平方数内的区间,分别查询和在相加,平方数的线段树需要推个公式


AC代码:最后



Problem L: You should be able to do it

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 26   Solved: 2
[ Submit][ Status][ BBS]

Description

Chengdu University has a team called ACM,people in this team do things very strictly.

 

They name themselves in integer, and there are n people with their id continuous (s+1,s+2,⋯,s+n) standing in a line in arbitrary order, people with id x wants to stand at yth position which satisfy

 

x mod y=0;

 

Is there any way to satisfy everyone's requirement?

Input

First line contains an integer T, which indicates the number of test cases.

 

Every test case contains one line with two integers n, s.

 

Limits

 

1≤T≤100.

 

1≤n≤109.

 

0≤s≤109.

Output

For every test case, you should output 'Case #x: y', where x indicates the case number and counts from 1 and y is the result string.

 

If there is any way to satisfy everyone's requirement, y equals 'Yes', otherwise y equals 'No'.

Sample Input

1
3 3

Sample Output

Case #1: Yes


题目大意 :给你一个n 表示有n个位置 编号为 1 到 n 然后给你一个s表示 有n个数  s+1,s+2,s+3,,,,,,s+n  将n个数与n个位置进行匹配 匹配规则是 s%n ==0  即第i个数是匹配位置的编号的倍数 问你是否能全部匹配


题目思路:  这题可以考虑如果n个数有两个及以上的素数没有在相交的区间里是指定不能匹配的应为只有一个素数可以匹配1,另外的素数就没有地方匹配了,,两个以内的话不完全成立,而这题可以预先打个表找下规律,可以得到当区间不想交的部分大于了500时无论怎么都是匹配不了的,,所以最后最多只需匹配500个,然后建个二分图,每条数每个位置都建条边可以匹配权值为1不能权值为0  然后就是套二分匹配的模板,(有可能暴力匹配可以过)


AC代码:最后





Problem M: 质数

Time Limit: 1 Sec   Memory Limit: 128 MB
Submit: 383   Solved: 53
[ Submit][ Status][ BBS]

Description

给出T个正整数,检测每个数是否为质数。如果是,输出"Yes",否则输出"No"。

Input

1行:一个数T,表示正整数的数量。(1 <= T <= 1000)

2 - T + 1行:每行1个数(2 <= a[i]<= 10^9)

Output

输出共T行,每行为 Yes 或 No。

Sample Input

6
2
3
4
5
6
7

Sample Output

Yes
Yes
No
Yes
No
Yes



题目思路:直接判断改数是不是素数即可循环从 2 - 根号n 时间复杂度为 O(T*sqrt(n))



AC代码汇总   :   代码链接 


你可能感兴趣的:(校赛)