本次院赛由10金融大牛stryandk命题,徐杨炳、陈铭洲、钟烈明、贾树炳等参与了测试工作,在此陈老师代表学院对他表示感谢!
程序设计竞赛涉及的算法较多,典型的包括:
DP:贪心、优化、数位DP、背包问题、树形DP、区间DP、排列组合状压DP、最长有序子序列、最长公共递增子序列;
计算几何:二维基本模板、扫描线、圆经典问题、一类边的遍历问题、解析几何;
高级数据结构:平衡2叉树、快排、堆、表达式树、trie树、stack、HASH、树状数组、逆序对、RMQ、堆(手写版)
数学:同余方程组、特殊数列、Sg函数、组合数求模、递推、高斯消元、线性代数、积分题、中国剩余(非互质)欧拉函数、鸽笼原理、容斥原理、进制转换、约瑟夫环、区间筛素数、素数判定、素数表、因数分解、矩阵乘
搜索:递归、分治、A*、IDA*、回朔、剪枝、极大极小
图论(略)
字符串:Ac自动机、kmp、O(n)回文串bupt203、字符串最小表示法
stryandk大牛最喜欢数学,因此本次院赛的数学题较多。本次比赛也将从stryandk先发现的一个很有趣的序列拉开序幕。序列如下:
1
11
21
1211
111221
312211
stryandk惊奇地发现,这个序列是有规律的。比方说第四行的数字是111221,有3个连续的1,2个连续的2,1个连续的1,所以第五行的数字就是312211。
现在给你一个数字,你能按照上述的规律写出它下一行的数字吗?
第一行有一个T表示数据组数(T<=100),接下来的T行有一个数字X,X的长度不超过100。
保证X只由0~9的数组组成且不含前导0。
Output:
对于每一个X,输出它对应的数字Y。
对于每一个X,输出它对应的数字Y。
2
1222
1234
1132
11121314