自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 习题5-1 代码对齐(Alignment of Code, ACM/ICPC NEERC 2010, UVa1593)

输入若干行代码,要求各列单词的左边界对齐且尽量靠左。单词之间至少要空一格。每个单词不超过80个字符,每行不超过180个字符,一共最多1000行,样例输入与输出如图所示。

2024-01-14 16:44:21 420

原创 丑数(优先队列问题)

已知1,2,3,5必定是丑数,而且如果x是丑数,那么2x、3x、4x也一定是丑数。那么我们可以设置一个优先队列,循环出队然后把2x、3x、5x入队,循环到1500次终止。丑数是指不能被2,3,5以外的其他素数整除的数。把丑数从小到大排列起来,结果如。求第1500个丑数。

2024-01-12 12:32:09 438

原创 信息解码(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 99

原创 救济金发放(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 46

原创 周期串(Periodic Strings, UVa455)

如果一个字符串可以由某个长度为k的字符串重复多次得到,则称该串以k为周期。例如,abcabcabcabc以3为周期(注意,它也以6和12为周期)。思路:从第二个元素开始和第一个元素比较,如果相同则同时向右循环对比,如果全部一致则最小周期是j-i。输入一个长度不超过80的字符串,输出其最小周期。

2023-12-04 15:23:29 90

原创 得分(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 34

原创 环状序列(Circular Sequence, ACM/ICPC Seoul 2004, UVa1584)

这题其实有点类似循环队列,可以借助取余思想,使每个字符的位置不超出串的长度。一开始想着用compare函数,但是考虑到需要从每一个位置开始比较,所以自己重写compare,对于每一个位置开头的串进行比较,最终得出最小的串。输入一个长度为n(n≤100)的环状DNA串(只包含A、C、G、T这4种字符)的一种表示法,你的任务是输出该环状串的最小表示。例如,CTCC的最小表示是CCCT,CGAGTCAGCT的最小表示为AGCTCGAGTC。长度为n的环状串有n种表示法,分别为从某个位置开始顺时针得到。

2023-12-03 14:43:14 80

原创 生成元(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 166

原创 回文串和镜像串问题

回文串,就是反转以后和原串相同,如abba和madam。所有镜像串,就是左右镜像之后和原。串相同,如2S和3AIAE。注意,并不是每个字符在镜像之后都能得到一个合法字符。输入一个字符串,判断它是否为回文串以及镜像串。输入字符串保证不含数字0。输入的每行包含一个字符串(保证只有上述字符。不含空白字符),判断它是否为回文。中,每个字符的镜像如图所示(空白项表示该字符镜像后不能得到一个合法字符)。串和镜像串(共4种组合)。每组数据之后输出一个空行。回文词(Palindromes, UVa401)

2023-12-02 17:08:56 46

原创 WERTYU

输入一个错位后敲出的字符串(所有字母均大写),输出打字员本来想打出的句子。输入保证合法,即一定是错位之后的字符串。例如输入中不会出现大写字母A。把手放在键盘上时,稍不注意就会往右错一位。这样,输入Q会变成输入W,输入J会变成输入K等。

2023-12-02 14:49:34 20

原创 TeX中的引号

在Tex中,左双引号是" `` ",右双引号是“ ‘’ ” .输入一篇包含双引号的文章,你的任务是把它转换成TeX的格式。

2023-12-02 13:55:59 20

原创 竖式问题

​竖式问题。找出所有形如 abc*de(三位数乘以两位数)的算式,使得在完整的竖式中,所有数字都属于一个特定的数字集合。输入数字集合(相邻数字之间没有空格),输出所有竖式。每个竖式前应有编号,之后应有一个空行。最后输出解的总数。具体格式见样例输出(为了便于观察,竖式中的空格改用小数点显示,但所写程序中应该输出空格,而非小数点)。样例输入:2357输出。

2023-11-29 11:36:11 23

原创 蛇形矩阵问题

基本思想是循环控制,初始化矩阵每个元素为零,判断下一步是否有元素,并且是否为零,再继续填数。在n*n方阵里填入1,2,...,n,要求填成蛇形矩阵。例如当n=4时,矩阵为。

2023-11-28 12:21:02 40

原创 关于顺序表的算法设计(待更新)

顺序表算法

2022-08-16 22:18:44 480

原创 顺序表的基本操作

顺序表的基本操作

2022-08-16 21:23:22 334

原创 7-2 通讯录排序 (12分)

输入n个朋友的信息,包括姓名、生日、电话号码,本题要求编写程序,按照年龄从大到小的顺序依次输出通讯录。题目保证所有人的生日均不相同。输入格式:输入第一行给出正整数n(<10)。随后n行,每行按照“姓名 生日 电话号码”的格式给出一位朋友的信息,其中“姓名”是长度不超过10的英文字母组成的字符串,“生日”是yyyymmdd格式的日期,“电话号码”是不超过17位的数字及+、-组成的字符串。输出格式:按照年龄从大到小输出朋友的信息,格式同输出。输入样例:3zhang 19850403 139

2020-07-15 10:58:07 848

原创 7-1 时间换算 (12分)pta

本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。输入格式:输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。输出格式:输出在一行中给出hh:mm:ss格式的结果时间。输入样例:11:59:4030输出样例:12:00:10#include<stdio.h>int main(){ int h,m,s; scanf("%d:%d:%d",&h,&amp

2020-07-15 10:06:48 2831

原创 6-2 结构体数组中查找指定编号人员 (10分)PTA

人员的记录由编号和出生年、月、日组成,N名人员的数据已在主函数中存入结构体数组std中,且编号唯一。 函数fun的功能是:找出指定编号人员的数据,作为函数值返回,由主函数输出,若制定编号不存在,返回数据中的编号为空串。函数接口定义:struct student fun(struct student *std, char *num)其中 std 和 num 都是用户传入的参数。 函数fun的功能是:在 std 结构体数组中找出指定编号 num 人员的数据,作为函数值返回,由主函数输出,若制定编号不存

2020-07-15 09:51:42 4177 4

原创 6-1 按等级统计学生成绩 (10分)pta

本题要求实现一个根据学生成绩设置其等级,并统计不及格人数的简单函数。函数接口定义:int set_grade( struct student *p, int n );其中p是指向学生信息的结构体数组的指针,该结构体的定义为:struct student{int num;char name[20];int score;char grade;};n是数组元素个数。学号num、姓名name和成绩score均是已经存储好的。set_grade函数需要根据学生的成绩score设置其等级grade

2020-07-15 09:41:32 6941 1

原创 7-7 猜数字 (20分)

一群人坐在一起,每人猜一个 100 以内的数,谁的数字最接近大家平均数的一半就赢。本题就要求你找出其中的赢家。输入格式:输入在第一行给出一个正整数N(≤10^4​ )。随后 N 行,每行给出一个玩家的名字(由不超过8个英文字母组成的字符串)和其猜的正整数(≤ 100)。输出格式:在一行中顺序输出:大家平均数的一半(只输出整数部分)、赢家的名字,其间以空格分隔。题目保证赢家是唯一的。输入样例:7Bob 35Amy 28James 98Alice 11Jack 45Smith 33C

2020-07-14 15:47:40 3519

原创 7-5 计算职工工资 (15分)

给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。输入格式:输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符的非空字符串,其他输入、输出保证在单精度范围内。输出格式:按照输入顺序,每行输出一位职员的姓名和实发工资,间隔一个空格,工资保留2位小数。输入样例:3zhao 240 400 75qi

2020-07-14 14:45:46 2333

原创 7-4 找最长的字符串 (15分)PTA

本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。输入格式:输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。输出格式:在一行中用以下格式输出最长的字符串:The longest is: 最长的字符串如果字符串的长度相同,则输出先输入的字符串。输入样例:5liwangzhangjinxiang输出样例:The longest is: zhang#include<stdio.h>#incl

2020-07-14 11:02:35 4394 2

原创 7-3 特殊a串数列求和 (20分) PTA

给定两个均不超过9的正整数a和n,要求编写程序求a+aa+aaa++⋯+aa⋯a(n个a)之和。输入格式:输入在一行中给出不超过9的正整数a和n。输出格式:在一行中按照“s = 对应的和”的格式输出。输入样例:2 3输出样例:s = 246#include<stdio.h>int main(){ int a,n,s=0; scanf("%d %d",&a,&n); int a0=a; for(int i=0;i<n;i++) {

2020-07-14 10:43:47 1631

原创 在数组中查找指定元素 (10分) PTA (C语言)

7-2 在数组中查找指定元素 (10分)输入一个正整数repeat (0<repeat<10),做repeat次下列运算:输入一个正整数 n (1<n<=10),然后输入n个整数存入数组a中,再输入一个整数x,在数组a中查找x,如果找到则输出相应元素的最小下标,否则输出"Not found"。要求定义并调用函数search(list, n, x),它的功能是在数组list中查找元素x,若找到则返回相应元素的最小下标,否则返回-1,函数形参 list 的类型是整型指针,形参n和x的

2020-07-12 15:42:18 5538 3

原创 考试座位号 (15分) PTA(C语言)

C语言 考试座位号 (15分) PTA每个 PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码。输入格式:输入第一行给出一个正整数 N(≤1000),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号。其中准考证号由 16 位数字

2020-07-12 15:16:44 2152

通讯录管理系统(C++).cpp

用 C/C++设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。 1、功能要求 (1) 查看功能:选择此功能时,列出下列三类选择。 A 办公类 B 个人类 C 商务类,当选中某类时,显示出此类所有数据中的姓名和电话号码) (2) 增加功能:能录入新数据(一个结点包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类)、电子邮件)。例如 杨春 13589664454 商务类 [email protected] 当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过15 条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。 (3)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改 (4)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。

2020-07-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除