![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
洛谷
记录自己在洛谷的刷题历程·····
于指尖飞舞
妄想在互联网沙滩上留下一行淡淡的脚印……
展开
-
洛谷:lP1328 [NOIP2014 提高组] 生活大爆炸版石头剪刀
代码:#include<iostream>using namespace std;int d[5][5] = {//0是平局,-1是输,1是赢 { 0, -1, 1, 1, -1 }, { 1, 0, -1, 1, -1 }, { -1, 1, 0, -1, 1 }, { -1, -1, 1, 0, 1 }, { 1, 1, -1, -1, 0 }};int a[200], b[200];int main(){ int n, na, nb; int sa = 0,..原创 2021-03-04 12:15:36 · 124 阅读 · 0 评论 -
洛谷:P1067 [NOIP2009 普及组] 多项式输出
代码借用洛谷中的一片题解:#include<iostream>using namespace std;int main(){ int n, a; cin >> n; for (int i = n; i >= 0; i--){ cin >> a; if (a){ if (i != n&&a>0)cout << "+"; if (abs(a)>1 || i == 0)cout <&..原创 2021-03-04 12:15:57 · 278 阅读 · 0 评论 -
洛谷:P1003 [NOIP2011 提高组] 铺地毯
题目描述为了准备一个独特的颁奖典礼,组织者在会场的一片矩形区域(可看做是平面直角坐标系的第一象限)铺上一些矩形地毯。一共有 n 张地毯,编号从 1 到 n。现在将这些地毯按照编号从小到大的顺序平行于坐标轴先后铺设,后铺的地毯覆盖在前面已经铺好的地毯之上。地毯铺设完成后,组织者想知道覆盖地面某个点的最上面的那张地毯的编号。注意:在矩形地毯边界和四个顶点上的点也算被地毯覆盖。输入格式输入共 n + 2行。第一行,一个整数 n,表示总共有 n 张地毯。接下来的 n 行中,第 i+1 行表示编号 ii原创 2021-03-04 12:16:08 · 233 阅读 · 0 评论 -
洛谷:P1025 [NOIP2001 提高组] 数的划分
题目描述将整数n分成k份,且每份不能为空,任意两个方案不相同(不考虑顺序)。例如:n=7,k=3,下面三种分法被认为是相同的。1,1,51,5,15,1,1问有多少种不同的分法。输入格式n,k(6<n≤200,2≤k≤6)输出格式1个整数,即不同的分法。输入输出样例输入 #17 3输出 #14说明/提示四种分法为:1,1,51,2,41,3,32,2,3【题目来源】NOIP 2001 提高组第二题此题用递推递归都可以做,这里只介绍一种方法:递推:原创 2021-01-18 21:29:25 · 294 阅读 · 0 评论 -
洛谷:P1464 Function
题目描述对于一个递归函数w(a,b,c)如果a≤0 or b≤0 or c≤0就返回值1.如果a>20 or b>20 or c>20就返回w(20,20,20)如果a<b并且b<c 就返回w(a,b,c−1)+w(a,b−1,c−1)−w(a,b−1,c)其它的情况就返回w(a−1,b,c)+w(a−1,b−1,c)+w(a−1,b,c−1)−w(a−1,b−1,c−1)这是个简单的递归函数,但实现起来可能会有些问题。当a,b,c均为15时,调用的次数将非常的多。原创 2020-11-06 15:11:08 · 304 阅读 · 0 评论 -
洛谷:P1036 选数
题目描述已知 n 个整数 x1,x 2,…,xn,以及11个整数k(k<n)。从n个整数中任选k个整数相加,可分别得到一系列的和。例如当n=4,k=3,44个整数分别为3,7,12,19时,可得全部的组合与它们的和为:3+7+12=223+7+19=297+12+19=383+12+19=34。现在,要求你计算出和为素数共有多少种。例如上例,只有一种的和为素数:3+7+19=29。输入格式键盘输入,格式为:n,k(1≤n≤20,k<n)x1,x2 ,…,x n(1≤x i≤原创 2020-11-06 09:04:42 · 217 阅读 · 0 评论 -
洛谷:P1028 数的计算
题目描述我们要求找出具有下列性质数的个数(包含输入的正整数 nn)。先输入一个正整数 n(n≤1000),然后对此正整数按照如下方法进行处理:不作任何处理;在它的左边加上一个正整数,但该正整数不能超过原数的一半;加上数后,继续按此规则进行处理,直到不能再加正整数为止。输入格式1 个正整数 n(n≤1000)输出格式1 个整数,表示具有该性质数的个数。输入输出样例输入 #16输出 #16说明/提示满足条件的数为6,16,26,126,36,136思路:这道题用递归超时原创 2020-11-06 08:37:21 · 382 阅读 · 0 评论 -
洛谷:P5587 打字练习
题目描述R 君在练习打字。有这样一个打字练习网站,给定一个范文和输入框,会根据你的输入计算准确率和打字速度。可以输入的字符有小写字母、空格和 .(英文句号),输入字符后,光标也会跟着移动。输入的文本有多行,R 君可以通过换行键来换行,换行后光标移动到下一行的开头。R 君也可以按退格键(为了方便,退格键用 < 表示),以删除上一个打的字符,并将光标回移一格。特殊的,如果此时光标已经在一行的开头,则不能继续退格(即忽略此时输入的退格键)。网站的比较方式遵循以下两个原则:逐行比较,即对于范文和输原创 2020-11-06 08:23:00 · 916 阅读 · 0 评论 -
洛谷:P1012 拼数
题目描述设有 n 个正整数 a1…an,将它们联接成一排,相邻数字首尾相接,组成一个最大的整数。输入格式第一行有一个整数,表示数字个数 n。第二行有 n 个整数,表示给出的 n 个整数 ai。输出格式一个正整数,表示最大的整数输入输出样例输入 #1313 312 343输出 #134331213输入 #247 13 4 246输出 #27424613说明/提示对于全部的测试点,保证1≤n≤20,1≤ai≤1e9。思路:自己定义一种排序方法:string a原创 2020-11-06 08:14:53 · 779 阅读 · 0 评论 -
洛谷:P2010 回文日期
题目描述在日常生活中,通过年、月、日这三个要素可以表示出一个唯一确定的日期。牛牛习惯用8位数字表示一个日期,其中,前44位代表年份,接下来2位代表月 份,最后2位代表日期。显然:一个日期只有一种表示方法,而两个不同的日期的表 示方法不会相同。牛牛认为,一个日期是回文的,当且仅当表示这个日期的8位数字是回文的。现 在,牛牛想知道:在他指定的两个日期之间包含这两个日期本身),有多少个真实存 在的日期是回文的。一个8位数字是回文的,当且仅当对于所有的i(1≤i≤8)从左向右数的第i个 数字和第9-i个数字原创 2020-11-06 08:04:46 · 1132 阅读 · 0 评论 -
洛谷:P5594 【XR-4】模拟赛
题目描述X 校正在进行 CSP 前的校内集训。一共有 nn 名 OIer 参与这次集训,教练为他们精心准备了 m套模拟赛题。然而,每名 OIer 都有各自的时间安排,巧合的是,他们在接下来的 k 天中都恰好有 m 天有空打模拟赛。(通过此话,来做k天m场的数组的标记)为了方便管理,教练规定一个人必须按顺序打完 mm 套模拟赛题。比如,小 X 在接下来的第 2,3,5天有空打模拟赛,那么他就必须在第 2 天打第 1 套模拟赛题,第 3 天打第 2 套模拟赛题,第 5 天打第 3 套模拟赛题。教练需原创 2020-11-01 17:03:45 · 435 阅读 · 0 评论 -
洛谷:P1055 ISBN号码
题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括99位数字、11位识别码和33位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如00代表英语;第一个分隔符-之后的三位数字代表出版社,例如670670代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。识别码的计算方法如下:首位数字乘以11加上次原创 2020-11-01 16:38:20 · 123 阅读 · 0 评论 -
洛谷:P1308 统计单词数
题目描述一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配,即给定单词必须与文章中的某一独立单词在不区分大小写的情况下完全相同(参见样例1 ),如果给定单词仅是文章中某一单词的一部分则不算匹配(参见样例2 )。输入格式共22行。第11行为一个字符串,其中只含字母,表示给定单词;原创 2020-11-01 16:30:39 · 102 阅读 · 0 评论 -
洛谷:P2141 珠心算测验
利用STL中的set来解题注:一开始没有想到去重这个点,看了众多题解后,修改了自己的代码。思路:set用来存集合,vector用双层循环来遍历输入的元素,set中count()函数用来判断元素是否在集合中,erase()根据元素的值或元素在集合中的迭代器位置来擦除它,在这个题里用来去重。去重:(原题问题:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?)例:1 + 4 = 5 和 2 + 3 = 5 算一种输入:51 2 3 4 5输出:3代码如下:#include<原创 2020-10-30 22:58:05 · 229 阅读 · 0 评论