
每天一道算法题
复习你给的温柔
这个作者很懒,什么都没留下…
展开
-
习题5-1 代码对齐(Alignment of Code, ACM/ICPC NEERC 2010, UVa1593)
输入若干行代码,要求各列单词的左边界对齐且尽量靠左。单词之间至少要空一格。每个单词不超过80个字符,每行不超过180个字符,一共最多1000行,样例输入与输出如图所示。原创 2024-01-14 16:44:21 · 470 阅读 · 0 评论 -
丑数(优先队列问题)
已知1,2,3,5必定是丑数,而且如果x是丑数,那么2x、3x、4x也一定是丑数。那么我们可以设置一个优先队列,循环出队然后把2x、3x、5x入队,循环到1500次终止。丑数是指不能被2,3,5以外的其他素数整除的数。把丑数从小到大排列起来,结果如。求第1500个丑数。原创 2024-01-12 12:32:09 · 623 阅读 · 0 评论 -
信息解码(Message Decoding, ACM/ICPC World Finals 1991, UVa 213)
这是遇到的第一个对我来说比较难的题,花了两三小时写出来的,而且有一点错误。序列的每个串依次对应编码头的每个字符。例如,0对应A,00对应B,01对应#,…进制表示,例如010代表长度为2),然后是各个字符的编码,以全1结束(例如,编码长度。编码文本由多个小节组成,每个小节的前3个数字代表小节中每个编码的长度(用二。首先是长度为1的串,然后是长度为2的串,依此类推。重点是readint函数,读取c个长度的二进制字符,返回出整型十进制数字。编码文本以编码长度为000的小节结束。注意上述序列中不存在全为1的串。原创 2023-12-08 21:57:36 · 166 阅读 · 0 评论 -
救济金发放(The Dole Queue, UVa 133)
在每一轮中,官员A数k个就停下来,官员B数m个就停下来(注意有可能两个官员停在同一个人上)。例如,n=10,k=4,m=3,输出为4 8, 9 5, 3 1, 2 6, 10, 7。输入n,k,m输出每轮里被选中的人的编号(如果有两个人,先输出被A选中的)。有两个官员,A从1开始逆时针数,B从n开始顺时针数。n(n原创 2023-12-07 10:31:05 · 82 阅读 · 0 评论 -
周期串(Periodic Strings, UVa455)
如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。思路:从第二个元素开始和第一个元素比较,如果相同则同时向右循环对比,如果全部一致则最小周期是j-i。输入一个长度不超过80的字符串,输出其最小周期。原创 2023-12-04 15:23:29 · 218 阅读 · 0 评论 -
得分(Score, ACM/ICPC Seoul 2005, UVa1585)
给出一个由O和X组成的串(长度为1~80),统计得分。每个O的得分为目前连续出现的O的个数,X的得分为0。例如,OOXXOXXOOO的得分为1+2+0+0+1+0+0+1+2+3。思路:直接从首至尾遍历串,设置一个变量t标记O的个数,如遇到X直接清零。原创 2023-12-04 14:30:41 · 82 阅读 · 0 评论 -
生成元(Digit Generator, ACM/ICPC Seoul 2005, UVa1583)
例如,n=216,121,2005时的解分别为198,0,1979。如果x加上x的各个数字之和得到y,就说x是y的生成元。给出n(1≤n≤100000),求最小生成元。原创 2023-12-03 11:25:57 · 285 阅读 · 0 评论 -
回文串和镜像串问题
回文串,就是反转以后和原串相同,如abba和madam。所有镜像串,就是左右镜像之后和原。串相同,如2S和3AIAE。注意,并不是每个字符在镜像之后都能得到一个合法字符。输入一个字符串,判断它是否为回文串以及镜像串。输入字符串保证不含数字0。输入的每行包含一个字符串(保证只有上述字符。不含空白字符),判断它是否为回文。中,每个字符的镜像如图所示(空白项表示该字符镜像后不能得到一个合法字符)。串和镜像串(共4种组合)。每组数据之后输出一个空行。回文词(Palindromes, UVa401)原创 2023-12-02 17:08:56 · 129 阅读 · 0 评论 -
TeX中的引号
在Tex中,左双引号是" `` ",右双引号是“ ‘’ ” .输入一篇包含双引号的文章,你的任务是把它转换成TeX的格式。原创 2023-12-02 13:55:59 · 113 阅读 · 0 评论 -
WERTYU
输入一个错位后敲出的字符串(所有字母均大写),输出打字员本来想打出的句子。输入保证合法,即一定是错位之后的字符串。例如输入中不会出现大写字母A。把手放在键盘上时,稍不注意就会往右错一位。这样,输入Q会变成输入W,输入J会变成输入K等。原创 2023-12-02 14:49:34 · 66 阅读 · 0 评论 -
竖式问题
竖式问题。找出所有形如 abc*de(三位数乘以两位数)的算式,使得在完整的竖式中,所有数字都属于一个特定的数字集合。输入数字集合(相邻数字之间没有空格),输出所有竖式。每个竖式前应有编号,之后应有一个空行。最后输出解的总数。具体格式见样例输出(为了便于观察,竖式中的空格改用小数点显示,但所写程序中应该输出空格,而非小数点)。样例输入:2357输出。原创 2023-11-29 11:36:11 · 95 阅读 · 0 评论 -
蛇形矩阵问题
基本思想是循环控制,初始化矩阵每个元素为零,判断下一步是否有元素,并且是否为零,再继续填数。在n*n方阵里填入1,2,...,n,要求填成蛇形矩阵。例如当n=4时,矩阵为。原创 2023-11-28 12:21:02 · 73 阅读 · 0 评论