![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ZZULIOJ
brav0
练习算法两年半的ACM选手
展开
-
ZZULIOJ 1154:校门外的树
题目描述某校大门外长度为L 的马路上有一排树,每两棵相邻的树之间的间隔都是1 米。我们可以把马路看成一个数轴,马路的一端在数轴0 的位置,另一端在L 的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端...原创 2018-11-23 16:16:54 · 2281 阅读 · 0 评论 -
天天的钢琴(数论)
题目描述天天开始弹奏钢琴了。他的钢琴由 N个琴键组成,每个键有一个权值xi,当天天开始弹琴时,他同时按K个不同的键。但是这个钢琴十分古怪,在他同时按了K个键之后,我们只能听到具有最大权值的那个键。现在天天准备试试这个钢琴K个键的所有组合,他想要知道将要听到琴声的权值和。因为结果会很大,所以输出mod 1000000007之后的结果。输入第一行两个整数N,K。(1<= N <...原创 2019-04-14 12:19:55 · 190 阅读 · 0 评论 -
Nim Game(博弈)
题目描述Nim is a mathematical game of strategy in which two players take turns removing objects from distinct heaps. On each turn, a player must remove at least one object, and may remove any number of ...原创 2019-04-14 12:07:20 · 401 阅读 · 0 评论 -
ZZULIOJ 1458: 走迷宫(二分,dfs)
题目描述Dr.Kong设计的机器人卡多非常爱玩,它常常偷偷跑出实验室,在某个游乐场玩之不疲。这天卡多又跑出来了,在SJTL游乐场玩个不停,坐完碰碰车,又玩滑滑梯,这时卡多又走入一个迷宫。整个迷宫是用一个N*N的方阵给出,方阵中单元格中填充了一个整数,表示走到这个位置的难度。这个迷宫可以向上走,向下走,向右走,向左走,但是不能穿越对角线。走迷宫的取胜规则很有意思,看谁能更快地找到一条路径...原创 2019-04-25 19:20:30 · 255 阅读 · 2 评论 -
ZZULIOJ 1162: 循环移动(指针专题)
题目描述有n个整数,使前面各数顺序向后移动k个位置,移出的数再从开头移入。输出移动后的数组元素。题目没有告诉你n的范围,希望你读入n之后用malloc()函数动态申请内存空间,不要提前定义数组的大小。不要偷懒哦。另外要求定义并使用函数ringShift()void ringShift(int *a, int n, int k){//循环移动后的数值仍然存入数组a中}输入输入分3行,第...原创 2018-11-27 14:44:03 · 1663 阅读 · 0 评论 -
ZZULIOJ 1156: 单数变复数
题目描述输入一个名词英语单词,按照英语语法规则把单数变成复数。规则如下:(1) 以辅音字母y结尾,变y为i,再加es;(2) 以s, x, ch, sh结尾,则加es;(3) 以元音o结尾,则加es;(4) 其他情况加上s。输入输入一个字符串,仅含小写字母,长度不超过20。输出输出其对应的复数形式。样例输入butterfly样例输出butterflies#include<s...原创 2018-11-22 22:53:50 · 2551 阅读 · 0 评论 -
ZZULIOJ 1159: 最大的两个数(指针专题)
题目描述求n个整数中的最大的两个元素。要求定义一个函数LargestTow(),求数组a的最大的两个元素,分别存入形参指针pfirst和psecond所指存储单元,函数原型如下:void LargestTow(int a[],int n,int *pfirst,int *psecond) { /*数组a有n个元素,将数组中的最大值存入形参指针pfirst所指内存单元,将数组中第二大的值...原创 2018-11-24 23:34:43 · 4700 阅读 · 0 评论 -
ZZULIOJ 1169: 大整数(指针专题)
题目描述输入3个大整数,位数不超过100位,按从小到大的顺序输出这三个整数。要求定义并使用如下函数比较两个大整数的大小。int cmp(char *a,char *b){//若大整数a大于b,返回1;//若a小于b,返回-1;// 若a与b相等,返回0}输入输入有3行,每行输入一个大整数,位数不超过100位,输入不含前导0。输出输出3行,即排序后的3个大整数。样例输入123456...原创 2018-11-30 22:31:05 · 2485 阅读 · 0 评论 -
ZZULIOJ 2353: 小明学长给学弟的任务(枚举)
题目描述这几天,小明学长事情比较多,一边写文件,一边思考怎么为小石坝们出既有意思,又能检验大家学习情况的题目。忙的一塌糊涂的小明学长看见石榴学弟竟然来找他闲聊!闲聊!!!聊着聊着石榴学弟随口一句:“等我看见好的题目也加上去”,“行啊” , “。。。”(都知道做题消耗脑细胞,其实出题消耗更多脑细胞,发际线又得高了,宝宝心里苦,不想说话),,于是,石榴理所当然的认为学弟替学长分担任务是一种应该传承...原创 2018-11-22 21:50:47 · 509 阅读 · 0 评论 -
ZZULIOJ 1164: 字符串加密
题目描述输入一串字符(长度不超过100)和一个正整数k,将其中的英文字母加密并输出加密后的字符串,非英文字母不变。加密思想:将每个字母c加一个序数k,即用它后面的第k个字母代替,变换公式:c=c+k。如果字母为z,则后一个字母是a,也就是字母字符形成一个圆。输入输入第一行是若干字符,以回车结束。输入第二行是一个整数k,k是int范围内的正整数;输出输出加密后的字符串。样例输入12kjs...原创 2018-11-27 19:02:17 · 1452 阅读 · 0 评论 -
ZZULIOJ 1152: 二分搜索
题目描述在有序序列中查找某一元素x。输入首先输入一个正整数n(n<=100000),表示该序列有n个整数,然后按从小到大的顺序输入n个整数;接着是一个正整数m,表示有m次查找;最后是m个整数,表示m个要查找的整数x。输出对于每一次查找,有一行输出。若序列中存在要查找的元素x,则输出元素x在序列中的序号(序号从0开始);若序列中不存在要查找的元素x,则输出"Not found!"。样...原创 2018-11-29 21:04:11 · 2274 阅读 · 0 评论 -
ZZULIOJ 1527: 小L的试卷(二分)
题目描述小L期末考试结束,高高兴兴放假回家了,可是那么多试卷,老师还要加班批改,有n份试卷由k个老师批改,n份试卷进行了密封编号,由于试卷上的做题情况和书写的规范程序不一样,批改不同的试卷用时也可能不一样,每个老师批改试卷的编号顺序是连续的,每位老师批改完分配给自己的试卷就可以离开,问最后离开的老师,最短可能的用时是多少,假定一份试卷让任何一位老师批改用时都是一样的。现在请你设计一种分配方案,...原创 2019-03-27 13:50:56 · 367 阅读 · 0 评论 -
ZZULIOJ 2328: 小P的字母子串
题目描述小P最近在研究字符编码,给出一串由0、1组成的字符串,从中任意进行截取,如果截取的字符串对应一个英文字母的ASCII值,小P就把这个0、1串叫字母子串,问给定的字符串最多能截取出多少个字母子串。输入测试数据有多组,每组一行由0、1组成的字符串,每行长度不超过10000。输出对于每组输入,在一行中输出最多可以截取的字母子串的数量。样例输入 Copy1011010...原创 2019-03-03 22:56:52 · 201 阅读 · 0 评论 -
传纸条(DP)
题目描述小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题。一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了。幸运的是,他们可以通过传纸条来进行交流。纸条要经由许多同学传到对方手里,小渊坐在矩阵的左上角,坐标(1, 1),小轩坐在矩阵的右下角,坐标(m, n)。从小渊传到小轩的纸条只可以向下或者向右传递,从小轩传给...原创 2019-02-26 17:33:25 · 519 阅读 · 0 评论 -
聪明的“KK”
题目描述非洲某国展馆的设计灵感源于富有传奇色彩的沙漠中陡然起伏的沙丘,体现出本国不断变换和绚丽多彩的自然风光与城市风貌。展馆由五部分组成,馆内影院播放名为《一眨眼的瞬间》的宽银幕短片,反映了建国以来人民生活水平和城市居住环境的惊人巨变。可移动“沙丘”变戏法 的灵感源于其独特而雄伟的自然景观——富于传奇色彩的险峻沙丘。宏伟的结构、可循环的建材,与大自然相得益彰。环绕一周,发现它正是从沙丘那不断...原创 2019-02-14 22:13:55 · 153 阅读 · 0 评论 -
ZZULIOJ 1546: 小L的加法器(贪心)
题目描述给定n个正整数让小L计算累加和,聪明的小L设计了一个加法器,但是加法器一次只能进行两个数的加法运算,而且两数和越大,相加的过程用时越长,假定一次加法操作用时正好为两个数的和,累加过程有很多方案,请你给出这些方案中,使n个数累加起来最少的用时是多少?输入第一行输入一个整数n(1<=n<=104),表示用来累加的数字个数,第二行输入n个数xi(1<=xi<=...原创 2019-04-25 23:23:45 · 287 阅读 · 0 评论 -
ZZULIOJ 2171: 举世伐唐(差分 or 树状数组)
题目描述 夫子将人间之气注入桑桑体内后,便再也无法隐瞒踪迹,昊天终于发现了他。 “恭请夫子显圣!” 西陵神国桃山最高处,庄严肃穆的神殿外,石坪上跪着黑压压的人群,往常骄横的红衣神官和神殿执事们。就像最虔诚的信徒,以额触地。 “恭请夫子显圣!” 极西荒原深处,天坑中央的巨峰之巅。悬空寺讲经首座的手中没有握着锡杖,而是诚心诚意地双手合什,无比恭敬地祝祷着。...原创 2019-04-25 23:29:35 · 351 阅读 · 1 评论 -
ZZULIOJ 1265: 你幸福吗?(差分)
时间限制: 1 Sec内存限制: 128 MB提交: 148解决: 41[提交] [状态] [讨论版] [命题人:admin]题目描述学校为了测试同学们的幸福感,选出个n名学生来测试,n名同学从左到右站成一队,编号为从1到n,现在有m条幸福标准,每条标准有若干同学满足,且满足每条标准的同学总是集中在队列的一端。对于每一条幸福标准,只有如下两种:To the left of i(...原创 2019-04-25 23:34:56 · 391 阅读 · 0 评论 -
ZZULIOJ 2428: 最小伤害
题目描述一个迷宫需要从左上角需要走到右下角,迷宫中的每一个格子,都会对人造成一定的伤害,求走到最下角的最小伤害。只能向右或者向下走。输入测试实例包括T组测试数据。(T <= 100)每组测试数据第一行为两个数字m和n,代表迷宫的行和列。 之后m行数据,每行n个数字,代表走到该格子对人造成的伤害。(1 <= m,n <= 10, 0 <= 伤害值 <= 100...原创 2018-12-02 19:19:44 · 387 阅读 · 0 评论 -
ZZULIOJ 1219: 速算24点
时间限制: 1 Sec内存限制: 128 MB提交: 155解决: 34[提交] [状态] [讨论版] [命题人:外部导入]题目描述速算24点相信绝大多数人都玩过。就是随机给你四张牌,包括 A(1),2,3,4,5,6,7,8,9,10,J(11),Q(12),K(13)。要求只用'+','-','*','/'运算符以及括号改变运算 顺序,使得最终运算结果为24(每个数必须且仅...原创 2019-05-11 23:33:51 · 1879 阅读 · 4 评论 -
ZZULIOJ 1924: 宣传墙 (dp)
时间限制: 1 Sec内存限制: 128 MB提交: 53解决: 16[提交] [状态] [讨论版] [命题人:admin]题目描述ALPHA 小镇风景美丽,道路整齐,干净,到此旅游的游客特别多。CBA 镇长准备在一条道路南面 4*N 的墙上做一系列的宣传。为了统一规划,CBA 镇长要求每个宣传栏只能占相邻的两个方格位置。但这条道路被另一条道路分割成左右两段。CBA 镇...原创 2019-05-15 15:24:24 · 199 阅读 · 0 评论 -
ZZULIOJ 1605: 数字序列 (矩阵快速幂)
时间限制: 1 Sec内存限制: 60 MB提交: 994解决: 236[提交] [状态] [讨论版] [命题人:541307010108]题目描述一个数列的定义如下:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.给出A和B,你要求出f(n).输入输入包含多个测试案例。每个测试用例包...原创 2019-05-14 18:56:49 · 440 阅读 · 0 评论 -
ZZULIOJ 2485: 程序员的背包
时间限制: 1 Sec内存限制: 256 MB提交: 115解决: 43[提交] [状态] [讨论版] [命题人:admin]题目描述众所周知,每个程序员都有一个背包,里边装着笔记本电脑(才不是为了随时改bug呢),耳机,移动电源,switch等。现在,L同学有一个背包,这个背包比较奇特,首先它的空间特别大,其次呢,它装东西要遵循一个规则:装的东西的重量只能递增。毕竟这是个四...原创 2019-05-01 00:51:23 · 215 阅读 · 0 评论 -
ZZULIOJ 1126: 布尔矩阵的奇偶性
题目描述一个布尔方阵具有奇偶均势特性,当且仅当 每行、每列总和为偶数,即包含偶数个1。如下面这个4*4的矩阵就具有奇偶均势特性:1 0 1 00 0 0 01 1 1 10 1 0 1编写程序,读入一个n阶方阵并检查它是否具有奇偶均势特性。如果没有,你的程序应当再检查一下它是否可以通过修改一位(把0改为1,把1改为0)来使它具有奇偶均势特性;如果不可能,这个矩阵就被认为是破坏了。输入...原创 2018-11-30 12:37:40 · 885 阅读 · 0 评论 -
ZZULIOJ 1177: 按要求排序(指针专题)
题目描述输入n和n个整数,然后按要求排序,若输入1,请输出升序排序序列;若输入2,请输出降序排序序列,若输入3,请输出按绝对值升序排序序列。要求程序结构如下,请完善程序。void sort(int a[], int n, int (*cmp)());int CmpAsc(int x, int y); /按升序要求判断两元素是否逆序/int CmpDec(int x, int y); /按...原创 2018-12-03 18:12:36 · 1501 阅读 · 0 评论 -
信道安全(最短路)
时间限制: 2 Sec内存限制: 128 MB提交: 255解决: 61[提交] [状态] [讨论版] [命题人:admin]题目描述Alpha 机构有自己的一套网络系统进行信息传送。情报员 A 位于节点 1,他准备将一份情报发送给位于节点 n 的情报部门。可是由于最近国际纷争,战事不断,很多信道都有可能被遭到监视或破坏。经过测试分析,Alpha 情报系统获得了网络...原创 2019-04-25 18:20:11 · 483 阅读 · 1 评论 -
ZZULIOJ 1198: 考试排名(二)(结构体专题)
题目描述ACM 国际大学生程序设计竞赛,英文全称:ACM International Collegiate Programming Contest(ACM-ICPC 或 ICPC)是由美国计算机协会(ACM)主办的,一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。经过30多年的发展,ACM 国际大学生程序设计竞赛已经发展成为最具影响力的大学生计算机竞赛。一...原创 2019-04-24 23:47:26 · 1773 阅读 · 0 评论 -
ZZULIOJ 1196: 数星星(二)(结构体专题)
题目描述一天,小明坐在院子里数星星,Gardon就出了个难题给他,让他数数天上的星星最多有多少个是在同一条直线上的。天上的星星太多了,小明马上就看花了眼,你能写个程序来帮他计算么?输入首先输入一个整数N(N<=300),接下来的N对数每对表示一个星星的位置(星星的坐标在-10000到10000之间,精确到小数点后1位)。没有两个星星会在同一个位置。输出一个整数,表示一条直...原创 2019-04-24 23:38:41 · 1823 阅读 · 1 评论 -
ZZULIOJ 2494: 考试排座位(模拟)
链接:http://acm.zzuli.edu.cn/problem.php?id=2494时间限制: 1 Sec内存限制: 128 MB提交: 74解决: 20[提交] [状态] [讨论版] [命题人:admin]题目描述每到考试时,为了保证每位同学和其周围的同学都不认识,小明想出了如下策略:假设某个考场有 N 个学校的考生,第 i 所学校有 t名考生参加考试。令每校考...原创 2019-04-24 23:29:35 · 774 阅读 · 0 评论 -
ZZULIOJ 1180-1198结构体专题 参考代码
题目描述小L比较喜欢研究奇妙的数字,有一天他发现了一类特殊的数,他将这些数命名为“小L数”。“小L数”的定义:数字的二进制是一个回文数。比如:1 (1)23 (11) 25 (101)2现在给出一个数字N,请判断他是不是小L数。输入第一行为一个正整数T,代表测试数据的数量(1<=T<=106)。接下来T行,每行为一个十进制数N(1<=N<...原创 2018-11-22 22:34:10 · 3563 阅读 · 0 评论 -
ZZULIOJ 1726: 迷宫 (bfs)
时间限制: 1 Sec内存限制: 128 MB提交: 1067解决: 164[提交] [状态] [讨论版] [命题人:admin]题目描述在很多 RPG (Role-playing Games) 游戏中,迷宫往往是非常复杂的游戏环节。通常来说,我们在走迷宫的时候都需要花非常多的时间来尝试不同的路径。但如果有了算法和计算机的帮助,我们能不能有更快的方式来解决这个问题?我们可以进行...原创 2019-04-29 12:49:11 · 214 阅读 · 0 评论 -
2019 CCPC 河南省赛A:最大下降矩阵(dp)
题目描述我们称一个矩阵是下降矩阵,当且仅当,矩阵的每一列都是严格下降的。很显然,这个要求很苛刻,大多数矩阵都无法满足。但是显然如果消去一些行,一定可以使得这个矩阵变成下降矩阵。现在给出一个n行m列的矩阵,请你求出最少消去多少行,可以使得这个矩阵变为下降矩阵。输入输入第一行包含两个正整数n,m分别表示矩阵的行数和列数。(1<=n,m<=300)接下来n行,每行有m个数,中...原创 2019-04-18 20:13:22 · 386 阅读 · 0 评论 -
ZZULIOJ 1410: Oulipo(KMP)
题目描述 法语作家Georges Perec (1936–1982) 曾经写过一本没有字母e的书La disparition,他是Oulipo组织的一个成员。从他的书中摘录一段文字如下:Tout avait Pair normal, mais tout s’affirmait faux. Tout avait Fair normal, d’abord, puis surgiss...原创 2019-04-23 14:38:30 · 341 阅读 · 0 评论 -
2019 CCPC 河南省赛 I :Childhood dream(枚举)
题目描述你童年时期就有一个梦想,想要加入 ACM(Association of Calculation and Magic),今天,这个机会终于 来了。但是 ACM 只想要哪些天赋异禀的人, 比如像 tourist,他们给了你一道题来检测你是否足够机智。猜一个长度为 m 数字串,总共有 n 个提示串,解释如下:8640 0A2BA 前面的数字说明与答案相比,有多少个位置上的数字...原创 2019-04-14 23:00:14 · 527 阅读 · 0 评论 -
ZZULIOJ 2425 : 青蛙抓虫
题目描述一只青蛙,想要捕食距离它M米处的一只昆虫。已知青蛙的蛙跳范围为[1, N]之间,单位米(每次蛙跳距离为整数,即[1,N]之间的整数)。青蛙在0的位置,求青蛙跳到M的位置吃到昆虫的方案数。输入测试实例包括T组测试数据。(T <= 100)每组测试数据为两个数字M和N,分别代表青蛙距离昆虫的距离以及蛙跳的最远距离。(0 <= M <= 1000, 0 <...原创 2019-02-14 21:12:44 · 1062 阅读 · 1 评论 -
ZZULIOJ 2509: 建国的穿越
题目描述 建国今天正在吃披萨,突然被传送到一个异次元世界,他发现这里是一个没有边界的二维世界,而他只有找到可以传送他的传送门才能顺利地回到自己的世界,但是这个异次元世界中存在着许多无法穿过的环形魔法阵,魔法阵内的人无法出来,魔法阵外的人也无法进去。现在给你建国的位置,传送门的位置以及魔法阵的范围,请你告诉建国能否回到自己的世界,若可以则输出&quot;Yes&quot;,否则输出&quot;No&quot;。 输入第一行输入一个整.原创 2019-01-06 09:18:49 · 303 阅读 · 0 评论 -
ZZULIOJ 2500: 建国与回文串
题目描述 建国最近学习了字符串,他对回文串很感兴趣(回文串是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串),而且建国非常喜欢偶数,并把长度为偶数的回文串成为完美回文串,现在建国想请你判断一个字符串能否有两个完美回文串拼接组成,如果可以输出&amp;quot;Yes&amp;quot;,否组输出&amp;quot;No&amp;quot;。 输入第一行输入一个整数T,表示样例数量。(1 &am原创 2019-01-06 09:29:51 · 424 阅读 · 1 评论 -
ZZULIOJ 1147: 查找子数组
题目描述给定两个整型数组,数组a有n个元素, 数组b有m个元素,1&lt;=m&lt;=n&lt;100,请检验数组b是否是数组a的子数组。若从数组a的某个元素a[i]开始,有b[0]=a[i],b[1]=a[i+1],…,b[m]=a[i+m],则称数组b是数组a的子数组。输入输入第一行为两个整数n和m;第二行为数组a的n个整数;第三行为数组b的m个整数,各数据之间用空格隔开。输出输出占一行...原创 2018-11-20 21:41:38 · 1232 阅读 · 0 评论 -
ZZULIOJ 1137: 查找最大元素
题目描述对于输入的字符串,查找其中的最大字母,在该字母后面插入字符串“(max)”。输入输入一行长度不超过200的字符串组成,字符串仅由大小写字母构成。输出输出的结果是插入字符串“(max)”后的结果,如果存在多个最大的字母,就在每一个最大字母后面都插入"(max)"。样例输入abcdefgfedcbag样例输出abcdefg(max)fedcbag(max)#include&lt...原创 2018-11-20 21:33:01 · 846 阅读 · 0 评论 -
ZZULIOJ 1143: 最大值—多种进制
题目描述输入n个数,每个数的进制由其后面的数字k指定,k&gt;=2且k&lt;=10, 输出最大的数对应的十进制数。要求程序定义一个KTod()函数和一个main()函数,KToD() 函数的功能是将k进制数转化为十进制整数,其余功能在main()函数中实现。int KToD(char str[], int k){//函数返回k进制数str对应十进制整数}输入首先输入整数n,然后是n...原创 2018-11-20 21:30:35 · 1642 阅读 · 0 评论