- 博客(22)
- 收藏
- 关注
原创 小学期 作业训练四 编程题 8. 最少钱币数【动态规划】
最少钱币数【问题描述】这是一个古老而又经典的问题。用给定的几种钱币凑成某个钱数,一般而言有多种方式。例如:给定了 6 种钱币面值为 2、5、10、20、50、100,用来凑 15 元,可以用 5 个 2 元、1个 5 元,或者 3 个 5 元,或者 1 个 5 元、1个 10 元,等等。显然,最少需要 2 个钱币才能凑成 15 元。你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。【输入形式】输入可以有多个测试用例。每个测试用例的第一行是待凑的钱数值 .
2021-09-15 09:41:39
239
原创 ab串【字符串】【前缀和】
ab串【问题描述】给定一个由字符’a’和字符’b’组成的字符串,可以删除若干字符,使得剩下来的字符串满足前后段为a,中间段为b(aaa…aaabbbb…bbbbaaa…aaa),区段可以没有字符(ba,ab,b,aa都是合法的),求最长剩下字符串的长度。【输入形式】输入为一行一个长度不超过5000的非空字符串,字符串仅由字符’a’和字符’b’组成。【输出形式】输出为一个整数,表示符合要求的最长剩下字符串长度【样例输入1】abba【样例输出1】4【样例输入2】bab【样例输出2】.
2021-09-08 22:53:43
1773
原创 作业训练三 编程题 12. 多项式加法【map】//错了两个数据?
作业训练三编程题12. 多项式加法【问题描述】一个多项式可以表示为一组数对,数对中第一个数始终为整数,且唯一,表示多项式的次数,另一数表示为对应的系数且不为0。输入两组数对,每组以0 0作为结束,实现对两个多项式的加法并按降幂输出结果数对【输入形式】每行输入一个数对,以空格为分隔符,以0 0结束【输出形式】每行输出一个数对,以空格为分隔符【样例输入】5 123 81 215 50 100 03 1230 115 50 0【样例输出】30 115 105 123
2021-09-07 09:35:04
127
原创 作业训练三 编程题 11. 数码管【一种神奇的方法】
数码管【问题描述】液晶数码管用七笔阿拉数字表示的十个数字,把横和竖的一 个短划都称为一笔,即7有3笔,8有7笔等。对于十个数字一种排列,要做到两相邻数字都可以由另一个数字加上几笔或减去几笔组成,但不能又加又减。比如 7→3是允许的,7→2不允许。任意输入一组数,判断是否符合上述规则,注意,1在右边。【输入形式】每行输入一个0~9的排列,数字之间用空格分隔,以-1作为输入结束【输出形式】输出YES或NO【样例输入】4 1 0 7 3 9 5 6 8 23 5 1 6 2 7 9 0 4 .
2021-09-06 21:40:12
538
原创 作业训练三 编程题 2. 导弹防御系统 【动态规划】
【问题描述】某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,并观测到导弹依次飞来的高度,请计算这套系统最多能拦截多少导弹。拦截来袭导弹时,必须按来袭导弹袭击的时间顺序,不允许先拦截后面的导弹,再拦截前面的导弹。【输入形式】每组输入有两行,第一行,输入雷达捕捉到的敌国导弹的数量k(k<=25),第二行,输入k个正整数,表示k枚导弹的高度,按来袭导弹
2021-09-06 09:12:41
297
原创 ccf201412-2 Z字型扫描 【动态模拟】
试题编号: 201412-2试题名称: Z字形扫描时间限制: 2.0s内存限制: 256.0MB问题描述: 问题描述 在图像编码的算法中,需要将一个给定的方形矩阵进行Z字形扫描(Zigzag Scan)。给定一个n×n的矩阵,Z字形扫描的过程如下图所示:对于下面的4×4的矩阵, 1 5 3 9 3 7 5 6 9 4 6 4 7 3 1 3 对其进行Z字形扫描后得到长度为16的序列: 1 5 3 9 7 3 9 5 4 7 3 6 6 4 1 3 请实现一个Z字形
2021-08-31 12:12:11
107
原创 ccf201403-2 窗口【list】
试题编号: 201403-2试题名称: 窗口时间限制: 1.0s内存限制: 256.0MB问题描述: 问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域。窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的内容。 当你点击屏幕上一个点的时候,你就选择了处于被点击位置的最顶层窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口的层次顺序不变。如果你点击的位置不属于任何窗口,则系统会忽略你这次
2021-08-29 10:54:11
119
原创 ccf 201403-1相反数【unordered_multiset】
试题编号: 201403-1试题名称: 相反数时间限制: 1.0s内存限制: 256.0MB问题描述: 问题描述 有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。输入格式 第一行包含一个正整数 N。(1 ≤ N ≤ 500)。 第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。输出格式 只输出一个整数,即这 N 个数中包含多少对相反数。样例输入51 2 3 -1 -2样例输
2021-08-29 09:56:20
79
原创 作业训练五 编程题 2. 0-1串
作业训练五 编程题 2. 0-1串【问题描述】对于一个包含 n 个整数元素的序列a1、a2、…、an,每个元素的值或者是0或者是1,选择两个下标i和j(1≤i≤j≤n),对于所有的此范围内的元素ak(i≤k≤j),执行操作ak =1- ak。选择合适的i和j,执行上述操作一次之后,可以得到的新序列中包含1的个数最多是多少?【输入形式】输入的第一行为一个整数 n(1≤ n ≤100),接来的一行为 n 个整数,每个整数或者是0或者是1。【输出形式】输出为一个整数,表示执行一次上述操作后可以获得的
2021-08-13 11:42:48
606
原创 作业训练三 编程题 1. 部分A+B
【训练三】1. 部分A+B【问题描述】正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6;给定A = 3862767,DA = 1,则A的“1部分”PA是0,因为A中有0个1。现给定A、DA、B、DB,请编写程序计算PA + PB。【输入形式】输入在一行中依次给出A、DA、B、DB,中间以空格分隔,其中0 < A, B < 1010。【输出形式】在一行中输出PA +
2021-07-29 10:03:09
319
原创 STL常见函数
queuequeue<int> q;push(elem);//添加元素pop();//移除一个元素back();//返回最后一个元素front();//返回第一个元素empty();//如果队列为空返回真size();//返回队列中元素个数
2021-04-20 20:01:45
98
原创 win10 彻底修改用户名
要把原来憨憨一样的中文用户名彻底修改成英文。重启了三次电脑,用了1h时间踩坑…第一次重启:1.打开运行:win+R2.输入netplwiz回车3.双击想修改用户名的账户4.在打开后的属性界面内有一个文本框为全名,在该文本框内输入想要的用户名,点击确定。5.重启电脑(此时只是修改了表面上的用户名,并没有修改路径)第二次重启:1.打开运行:输入 regedit ,进入注册表编辑器2.进入路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windo
2021-01-05 08:09:33
14129
21
原创 实验六 指针 程序片段编程题 2. 字符串反转(指针实现)
字符串反转(指针实现)……写在前面的声明:为什么要现在补这道题呢,,,是因为:我一开始用csdn写博客主要是为了记录和总结一下自己觉得比较麻烦的题,其他一些题就没有发上来。一则我这个人佛系,二则我以为网上都有解析不缺我一个。现在也很开心能够帮助到一些同学。以后如果发现有不太会,网上又找不到的题可以私信我(不过尽早一些…),我会尽量补档。看不明白的代码可以多调试,看看怎么运行的。…………【问题描述】从键盘输入一个长度不超过200的字符串,将该字符串反转后输出。【输入形式】输
2021-01-04 15:14:39
1244
原创 实验六 指针 程序片段编程题 1. 数组奇偶排列
数组奇偶排列【问题描述】从键盘输入n个整数,将奇数调整到前半部分,将偶数调整到后半部分,并分别按从小到大的顺序排列后输出。【输入形式】输入为两行,第一行为一个整数n(0<n≤107),第二行为n个整数。【输出形式】输出为一行,为经过排列之后的n个整数。【样例输入】612 17 6 11 2 3【样例输出】3 11 17 2 6 12#include <iostream>void qsort(int arr[], int low, int high);
2021-01-02 10:34:46
2995
3
原创 【算法】快速排序
快排思想:1.随便找一个基准值key(一般是数组的第一个数)把比它小的数都放到前面,比它大的数都放到后面。2.得到key前后的两个小数组,对两个数组分别再次排序,重复1步骤。3.如此递归调用,直到排序完成。步骤1有很多可能的实现:1.把基准值前后的元素分别提取出来作为数组a,b,对a,b分别调用排序函数。c++可能得用到STL容器。容易理解但是空间占用偏大。2.通过数组内交换元素完成步骤一。(一种咸鱼看来极为魔幻的方法)。极为优秀但是我想不到啊。...
2021-01-01 20:47:29
108
原创 实验七字符串 3.小希练打字
小希练打字【问题描述】小希打字太慢了,因此他在苦练打字技巧。他用了一个教学 App,可以一个个显示自己打出来的英文单词。当小希输入一个词时,他需要花0.2 秒输入第一个字母。而对于接下来的每个字母,如果在标 准指法下和前一个字母使用同侧手输入,则需要 0.4 秒;否则只需 0.2 秒。输入一个词所需的时间 为输入每个字母所需时间之和。不过,如果小希之前练过这个词,那么所需的时间可以降为初次 输入时的一半。小希输入的内容只包含26个英文字符(区分大小写),字符要求按照标准指法规定输入,其中"qwe.
2020-12-31 10:02:20
531
原创 实验十 文件读写 1. 学生成绩管理(二进制文件读写)
学生成绩管理(二进制文件读写)【问题描述】在以下问题中,定义学生的结构体student,录入学生信息,并存入到二进制文件grade.bin中,要求存入的是按照总成绩从大到小的顺序存储,数据可以分多次录入,每次录入前,都将显示文件中已有的数据,其具体形式如下:No: 3Name: HongSex: FAge: 9Scores: 123.000000 531241.000000No: 2Name: ZhangSex: FAge: 98Scores: 123.000000 434.0000
2020-12-30 16:45:44
3750
原创 1.codeblocks watches窗口不见了的解决方法
View------>Perspectives------>Code::Blocks default2.win10截图方法:win+shift+s
2020-12-29 08:46:42
3665
原创 实验十 文件读写 1. 文件排版(文本文件读写)
【问题描述】英文电影中参演人员名单一般以某种方式进行排版显示。给定一个未排版的文件listin.txt,该文件中每行参演人员名单由冒号ldquo:rdquo分隔成前后两部分,但格式杂乱无章,单词(由除空格和水平制表符之外的其它字符构成)之间可能有多个空格或水平制表符分隔。编写程序,要求将其按如下排版规则排版输出到另一个文件listout.txt中:1.从标准输入整数,作为排版后所有各行冒号在一行中的固定位置,输入的整数肯定大于排版后所有各行冒号前的字符个数,位置从1开始计数;2.冒号左边的单词串以行头
2020-12-29 08:38:59
2109
原创 实验五 数组 12. 岁月留痕
岁月留痕【问题描述】给定 n (1 ≤ n ≤ 24)个正整数a1、a2、…、an,请判断这 n 个数是否是连续 n 个月份的天数,这些月份可以跨年度。【输入形式】输入第一行为一个整数 n,第二行为n个正整数 a1、a2、…、an(28 ≤ ai ≤ 31)。【输出形式】输出Yes或No。【样例输入1】431 31 30 31【样例输出1】Yes【样例输入2】230 30【样例输出2】No【样例输入3】529 31 30 31 30【样例输出3】Yes【样..
2020-12-23 19:41:02
411
1
原创 约瑟夫环(vector类解决)
约瑟夫环(vector类解决)#include <iostream>#include <vector>using namespace std;int main() { vector<int> a; int n = 0, i = 0, k = 0, m = 0, p = 0; cin >> n >> k >> m; for (i = 0;i < n;i++) { //初始化 a.push_back(i + 1)
2020-12-19 09:27:33
971
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人