- 博客(23)
- 收藏
- 关注
原创 1736. 替换隐藏数字得到的最晚时间
题目:给你一个字符串 time ,格式为 hh:mm(小时:分钟),其中某几位数字被隐藏(用 ? 表示)。有效的时间为 00:00 到 23:59 之间的所有时间,包括 00:00 和 23:59 。替换 time 中隐藏的数字,返回你可以得到的最晚有效时间。示例 1:输入:time = “2?:?0”输出:“23:50”解释:以数字 ‘2’ 开头的最晚一小时是 23 ,以 ‘0’ 结尾的最晚一分钟是 50 。示例 2:输入:time = “0?:3?”输出:“09:39”示例 3:
2021-07-24 10:57:39
101
原创 P5587 打字练习
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210224210713186.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0Jhc2tfc3VtbWVy,size_16,color_FFFFFF,t_70思路:我对字符串掌握的并不好,所以这篇文章是借鉴另一位博主写的,在这里先感谢洛谷用户AC_duckli.
2021-02-24 21:17:15
435
原创 P1012 拼数
思路:这里要用到sort排序函数,而且为了解题,还需要我们对sort函数进行自定义,如有不了解sort函数的同学可以自行查阅一下。只要掌握自定义sort,这道题就很简单了#include<iostream>#include <algorithm>using namespace std;bool cmp(string a, string b) { return a + b > b + a;}int main() { int n; cin >> .
2021-02-23 10:16:11
131
原创 P2010 回文日期
思路:这道题本来是属于字符串基础里的,所以一开始我想用字符串做,但是发现有点无从下手。然后我看了看大家的解题方法,找到一个比较好的思路,而且不需要使用字符串就是遍历构造出每个回文日期,(注意因为回文,只需要考虑四个数字)然后判断该日期是否在给定日期区间内。而且不需要考虑是否是闰年,因为0229反过来是9220,整个日期是92200229,而9220年是闰年#include<iostream>using namespace std;int main(){ int d[13] = ..
2021-02-22 21:03:05
246
原创 P1308 统计单词数
思路:这道题我一开始并没有什么好思路,所以是看了别人的解答后写的,这里感谢洛谷用户Aimyhtixela,原文链接我也会放在后面这题主要使用c++中string类的find函数,还有大小写转换tolower(toupper)函数。有不懂这些方法的同学可以自行查阅一下。此外,这里空格处理a = ’ ’ + a + ’ '是避免单词被包含,例如要找to,结果Ottoman里含有to,但这个to并不是我们想要的。#include<iostream>#include<string>.
2021-02-21 10:31:50
81
原创 P1055 ISBN号码
思路:把数组存入到另一个数组,计算出识别码是否正确,并且要注意X的情况#include<iostream>using namespace std;int main() { char s[20]; cin >> s; char* a = s; int count = 1; int n[20] = { 0 }; while (*a != '\0') { if (*a != '-') { n[count] = *a - '0'; count++; .
2021-02-20 15:32:18
59
原创 P5015 标题统计
思路:使用指针很容易得出#include<iostream>#include<cstdio>using namespace std;int main() { char s[20]; gets(s); char* a = s; int count = 0; while (*a != '\0') { if (*a != ' ' && *a != '\n') { count++; } a++; } cout << co.
2021-02-20 14:54:14
107
原创 P5594 【XR-4】模拟赛
思路:这道题难度不大,但是需要理解题意,而且要注意下复杂度如果你看懂了你就知道,我们首先建立一个二维数组,接着只需要看每列是否出现该天数,出现则需要准备,而且无论出现几次都只准备一次。然后以列为单位一个个找即可。(在这里尽量避免使用三层循环,复杂度过不了,下面使用的是再开辟两个数组来记录,以空间换时间)#include<iostream>using namespace std;int main() { int n, m, k; cin >> n >> m .
2021-02-19 16:31:49
171
原创 P2141 珠心算测验
题目描述珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?最近老师出了一些测验题,请你帮忙求出答案。(本题目为2014NOIP普及T1)输入格式共两行,第一行包含一个整数n,表示测试题中给出的正整数个数。第二行有n个正整数
2021-02-19 13:44:39
216
原创 P1427 小鱼的数字游戏
思路:把输入的数字存到一个数组里,这里我用的是方法是先赋值给一个变量,在把变量的值给数组,并且记录个数,然后反向for循环输出即可#include<iostream>using namespace std;int main() { int a[101]; int temp = 1, count = 0; while (1) { cin >> temp; if (temp == 0) { break; } a[count] = temp; co.
2021-02-18 20:16:36
114
原创 P1047 校门外的树
思路:建立一个数组,只要这里种了树就赋值为1,然后建地铁的话,就将这段值修改为0,最后统计剩下的1的数量即为剩余树木的数量#include<iostream>using namespace std;int main() { int l, m; cin >> l; int len[10001]; for (int i = 0; i <= l; i++) { len[i] = 1; } cin >> m; for (int i = 0; i .
2021-02-17 17:35:06
83
原创 P1046 陶陶摘苹果
题目描述陶陶家的院子里有一棵苹果树,每到秋天树上就会结出 1010 个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个 3030 厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知 1010 个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。输入格式输入包括两行数据。第一行包含 1010 个 100100 到 200200 之间(包括 100100 和 200200 )的整数(以厘米为单位)
2021-02-16 09:48:44
110
1
原创 P1307 数字反转
题目描述给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。输入格式一个整数 NN输出格式一个整数,表示反转后的新数。输入输出样例输入123输出321输入-380输出-83思路:拆数法的应用,注意几个特殊情况,第一个是为0,第二个是末尾有0(可能多个所以要while循环),第三个是负数#include<iostream>using namespace std
2021-02-16 09:36:38
93
原创 P1014 Cantor表
题目描述现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的:输入格式整数N输出格式表中的第 N 项。输入输出样例输入7输出1/4思路:一开始我没看懂它那个z字形啥意思,后面我在网上找了找才知道是这个样子:好家伙,不说谁知道知道题意就还好了,观察发现分子分母为1的时候是转折点,而且转折后方向会变化,那我们就可以设置临界情况和一个用来转变方向的变量,分为四种情况输出排列#include<iostream>u
2021-02-15 21:27:32
145
原创 P1980 计数问题
题目描述试计算在区间 11 到 nn的所有整数中,数字x(0 ≤ x ≤ 9)x(0≤x≤9)共出现了多少次?例如,在 11到1111中,即在 1,2,3,4,5,6,7,8,9,10,111,2,3,4,5,6,7,8,9,10,11 中,数字 11 出现了 44 次。输入格式22个整数n,xn,x,之间用一个空格隔开。输出格式11个整数,表示xx出现的次数。输入输出样例输入11 1输出4思路:本来我想用字符串来做的,后来发现洛谷上不认识这个itoa函数,所以就用了普通的拆数法来写。
2021-02-14 16:46:20
78
原创 P1035 级数求和
题目描述已知:S_n= 1+1/2+1/3+…+1/nSn =1+1/2+1/3+…+1/n。显然对于任意一个整数 kk,当 nn 足够大的时候,S_n>kSnk。现给出一个整数 kk,要求计算出一个最小的 nn,使得 S_n>kSnk。输入格式一个正整数 kk。输出格式一个正整数 nn。输入输出样例输入1输出2思路:没什么好讲的,一看就懂,但是注意个细节,这里要用双精度的double才能通过#include<iostream>
2021-02-08 20:06:16
71
原创 P1085 不高兴的津津
题目描述津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外每周妈妈还会送她去学习朗诵、舞蹈和钢琴。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。输入格式输入包括77行数据,分别表示周一到周日的日程安排。每行包括两个小于1010的非负整数,用空格隔开,分别表示津津在学校上课的时间和
2021-02-08 19:49:54
125
原创 P1089 津津的储蓄计划
题目描述津津的零花钱一直都是自己管理。每个月的月初妈妈给津津300300元钱,津津会预算这个月的花销,并且总能做到实际花销和预算的相同。为了让津津学习如何储蓄,妈妈提出,津津可以随时把整百的钱存在她那里,到了年末她会加上20%20%还给津津。因此津津制定了一个储蓄计划:每个月的月初,在得到妈妈给的零花钱后,如果她预计到这个月的月末手中还会有多于100100元或恰好100100元,她就会把整百的钱存在妈妈那里,剩余的钱留在自己手中。例如1111月初津津手中还有8383元,妈妈给了津津300300元。津津
2021-02-07 16:09:47
225
原创 P1909 买铅笔
题目描述P老师需要去商店买n支铅笔作为小朋友们参加NOIP的礼物。她发现商店一共有 33种包装的铅笔,不同包装内的铅笔数量有可能不同,价格也有可能不同。为了公平起 见,P老师决定只买同一种包装的铅笔。商店不允许将铅笔的包装拆开,因此P老师可能需要购买超过nn支铅笔才够给小朋 友们发礼物。现在P老师想知道,在商店每种包装的数量都足够的情况下,要买够至少nn支铅笔最少需要花费多少钱。输入格式第一行包含一个正整数nn,表示需要的铅笔数量。接下来三行,每行用22个正整数描述一种包装的铅笔:其中第11个整
2021-02-07 15:54:05
90
原创 P1421 小玉买文具
题目描述班主任给小玉一个任务,到文具店里买尽量多的签字笔。已知一只签字笔的价格是 11 元 99 角,而班主任给小玉的钱是 aa 元 bb 角,小玉想知道,她最多能买多少只签字笔呢。输入格式输入只有一行两个整数,分别表示 aa 和 bb。输出格式输出一行一个整数,表示小玉最多能买多少只签字笔。输入输出样例输入10 3输出5思路:将元与角合并,再利用整除得出结果#include<iostream>using namespace std;int main() { in
2021-02-06 20:02:29
113
原创 泛型——堆栈输出数列若干项
import java.util.*;public class Test1 { public static void main(String args[]) { Stack<Integer> stack = new Stack<Integer>(); stack.push(new Integer(8)); stack.push(new Integer(3)); System.out.println("第1项:3"); System.out.println("第
2020-12-10 14:54:47
510
原创 一元多项式加法计算器
#include <stdio.h>#include <stdlib.h>typedef struct Polynode { int coef; // 系数 int exp; // 指数 struct Polynode* next;}Polynode,*Polylist;//输入数据, 边输入边排序进链表void InputDataAndSortingData(Polylist Polynomial, int n);//初始化多项式链表v
2020-12-03 16:41:21
436
原创 自定义异常类
自定义的异常类有三个步骤第一:建立异常类public class DangerException extends Exception { String s = new String(); public DangerException(String s) { this.s =s + "属于危险品"; } public String Mess() { return s; }}1.要使用extends Exception继承异常类2.建立String类s3.构造方法,这时候要将s
2020-12-03 16:38:33
627
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人