- 博客(42)
- 收藏
- 关注
原创 洛谷P3383 【模板】线性筛素数(埃氏筛会爆)
题目描述如题,给定一个范围 n,有 q 个询问,每次输出第 k 小的素数。输入格式第一行包含两个正整数 n,q,分别表示查询的范围和查询的个数。接下来 q 行每行一个正整数 k,表示查询第 k 小的素数。输出格式输出 q 行,每行一个正整数表示答案。输入输出样例输入 #1100 512345输出 #1235711说明/提示【数据范围】对于100% 的数据,n = 10^8 ,1≤q≤10^6 ,保证查询的素数不大于 n。答案#include <std
2020-09-01 23:32:00 314
原创 Day40 洛谷P5613 黑蚊子多(模拟)
题目描述Hikari 的面前有n(1≤n≤1000) 级台阶,每 1s 她可以向上跳 m(1≤m≤n) 级台阶。(不在中间的台阶上停留)台阶上有 k(k≤10) 个特殊的平台a_i,Hikari 在该平台 停留 时会使得 m 增加 1。请问 Hikari 到达台阶顶部花费的时间。输入格式共 2 行。第 1 行输入 3个非负整数 n,m,k。第 2 行输入 k 个正整数,第 i 个正整数表示 a_i,保证输入的 a_i 单调递增。输出格式共 1 行,输出 1 个正整数表示花费的时间。输入输
2020-07-26 21:35:45 380
原创 Day39 洛谷P2615 神奇的幻方(暴力模拟)
题目描述幻方是一种很神奇的 N*N矩阵:它由数字1,2,3,⋯⋯,N×N 构成,且每行、每列及两条对角线上的数字之和都相同。当 N 为奇数时,我们可以通过下方法构建一个幻方:首先将 1 写在第一行的中间。之后,按如下方式从小到大依次填写每个数 K(K=2,3,⋯,N×N) :若 (K-1)在第一行但不在最后一列,则将 K 填在最后一行, (K−1) 所在列的右一列;若 (K−1) 在最后一列但不在第一行,则将K填在第一列, (K−1) 所在行的上一行;若 (K-1)在第一行最后一列,则将 K填
2020-07-24 22:08:20 410
原创 Day38 洛谷P2141 珠心算测验(桶模拟)
题目描述珠心算是一种通过在脑中模拟算盘变化来完成快速运算的一种计算技术。珠心算训练,既能够开发智力,又能够为日常生活带来很多便利,因而在很多学校得到普及。某学校的珠心算老师采用一种快速考察珠心算加法能力的测验方法。他随机生成一个正整数集合,集合中的数各不相同,然后要求学生回答:其中有多少个数,恰好等于集合中另外两个(不同的)数之和?最近老师出了一些测验题,请你帮忙求出答案。(本题目为2014NOIP普及T1)输入格式共两行,第一行包含一个整数n,表示测试题中给出的正整数个数。第二行有n个正整数
2020-07-19 21:42:34 195
原创 Day37 洛谷P1887 乘积最大3(每个元素要尽可能接近,最多差1)
题目描述请你找出 M 个和为 N 的正整数,他们的乘积要尽可能的大。输出字典序最小的一种方案。输入格式一行,两个正整数 N,M输出格式M 个和为 N 的,乘积尽可能的大的正整数。输入输出样例输入 #16 3输出 #12 2 2说明/提示对于100%的数据,1≤N≤10^9 ,1≤M≤10^6。数据保证N≥M。#include<stdio.h>#include<string.h>int main(){ int N,M; int i; scanf("
2020-07-16 16:03:27 414
原创 Day36 洛谷P2192 HXY玩卡片(某数的每一位数字加和为9的倍数,则该数为9的倍数/多条件输出,灵活使用while(1)+break)
题目描述HXY得到了一些卡片,这些卡片上标有数字 0或 5 。现在她可以选择其中一些卡片排成一列,使得排出的一列数字组成的数最大,且满足被 90 整除这个条件。同时这个数不能含有前导 0 ,即 0 不能作为这串数的首位。如果不能排出这样的数,输出-1。输入格式第一行,卡片的个数 n 。第二行,分别给出了这 n 个数(只能为数字 5 或 0 )。输出格式仅一行,如果可以排出,则输出这个数。否则输出-1。输入输出样例输入 #145 0 5 0输出 #10输入 #2115 5 5 5
2020-07-15 16:37:33 228
原创 Day35 洛谷P2084 进制转换(water water water)
题目描述今天小明学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 :1 * 2^4 +0 * 2^3+1 * 2^2+0 *2^1 +1 *2^0那么请你编程实现,将一个M进制的数N转换成十进制表示的式子。注意:当系数为0时,该单项式要省略。输入格式两个数,M和N,中间用空格隔开。输出格式共一行,一个十进制表示的式子。输入输出样例输入 #1复制2 10101输出 #1复制1*2^4+1 *2^2+1 *2^0说明/提示对于100%的数据,1<M<
2020-07-14 16:10:56 237
原创 Day34 洛谷P1914 小书童——密码(ascii码)
题目背景某蒟蒻迷上了“小书童”,有一天登陆时忘记密码了(他没绑定邮箱or手机),于是便把问题抛给了神犇你。题目描述蒟蒻虽然忘记密码,但他还记得密码是由一个字符串组成。密码是由原文字符串(由不超过 50 个小写字母组成)中每个字母向后移动 n位形成的。z 的下一个字母是 a,如此循环。他现在找到了移动前的原文字符串及 n,请你求出密码。输入格式第一行:n。第二行:未移动前的一串字母输出格式一行,是此蒟蒻的密码输入输出样例输入 #11qwe输出 #1rxf说明/提示字符串长度<
2020-07-13 19:14:17 489
原创 Day33 洛谷P1888 三角函数(求最大公约数)
题目描述输入一组勾股数a,b,c(a≠b≠c),用分数格式输出其较小锐角的正弦值。(要求约分。)输入格式一行,包含三个数,即勾股数a,b,c(无大小顺序)。输出格式一行,包含一个数,即较小锐角的正弦值输入输出样例输入 #13 5 4输出 #13/5说明/提示数据区间1~10^9答案#include<stdio.h>int main(){ int a,b,c; scanf("%d %d %d",&a,&b,&c); in
2020-07-11 20:48:24 247
原创 Day32 洛谷P1876 开灯(先打表找规律)
题目背景该题的题目是不是感到很眼熟呢?事实上,如果你懂的方法,该题的代码简直不能再短。但是如果你不懂得呢?那。。。(自己去想)题目描述首先所有的灯都是关的(注意是关!),编号为1的人走过来,把是一的倍数的灯全部打开,编号为二的的把是二的倍数的灯全部关上,编号为3的人又把是三的倍数的灯开的关上,关的开起来……直到第N个人为止。给定N,求N轮之后,还有哪几盏是开着的。输入格式一个数N,表示灯的个数和操作的轮数输出格式若干数,表示开着的电灯编号输入输出样例输入 #15输出 #11 4
2020-07-10 20:02:33 171
原创 Day31 洛谷P1789 【Mc生存】插火把(普普通通的模拟)
题目描述话说有一天 linyorson 在“我的世界”开了一个n×n(n≤100) 的方阵,现在他有 m 个火把和 k 个萤石,分别放在 (x_1,y_1)…(x_m,y_m)和 (o_1,p_1)…(o_k,p_k)的位置,没有光且没放东西的地方会生成怪物。请问在这个方阵中有几个点会生成怪物?P.S.火把的照亮范围是:|暗|暗| 光 |暗|暗||暗|光| 光 |光|暗||光|光|火把|光|光||暗|光| 光 |光|暗||暗|暗| 光 |暗|暗|萤石:|光|光| 光 |光|光||光|光
2020-07-09 18:37:04 392
原创 Day30 洛谷P1765 手机 (输入带空格的字符串,请用gets)
题目描述一般的手机的键盘是这样的:要按出英文字母就必须要按数字键多下。例如要按出 x 就得按 9 两下,第一下会出 w,而第二下会把 w 变成 x。0 键按一下会出一个空格。你的任务是读取若干句只包含英文小写字母和空格的句子,求出要在手机上打出这个句子至少需要按多少下键盘。输入格式一行句子,只包含英文小写字母和空格,且不超过 200 个字符。输出格式一行一个整数,表示按键盘的总次数。输入输出样例输入 #1i have a dream输出 #123答案(暴力)#include&l
2020-07-08 15:40:09 477
原创 Day29 洛谷P1615 西游记公司(带有特殊字符的输入方法)
题目背景一道极其无厘头的题目题目描述事情是这样的:西游记中的孙沙猪(孙杀猪)三徒弟在西天取经之后开始进入厦门大学经贸系学习经济,在1个小时的学习后,他们用暴力手段毕业了。然后,他们创办了三个公司——“花果山生态旅游山庄集团公司”“高老庄猪肉美食城有限公司”“流沙河轮渡有限公司”。虽然这三家公司出自“经卷出版社”社长唐三藏的徒弟们,但是仍然保持着0元以下的财政收入。于是,他们想到了一个无聊的方法——向别人偷!是这样的:如果猪八戒知道孙悟空要偷猪八戒的平底锅,猪八戒就不能去抢沙和尚的保时捷。现在,作为猪八
2020-07-07 20:06:35 208
原创 Day28 洛谷P1614 爱与愁的心痛 (模拟)
题目描述最近有 n 个不爽的事,每句话都有一个正整数刺痛值(心理承受力极差)。爱与愁大神想知道连续 m 个刺痛值的和的最小值是多少,但是由于业务繁忙,爱与愁大神只好请你编个程序告诉他。输入格式第一行有两个用空格隔开的整数,分别代表 n 和 m。第 2 到第 (n + 1) 行,每行一个整数,第(i+1)行的整数ai代表第 i 件事的刺痛值ai 。输出格式输出一行一个整数,表示连续 m个刺痛值的和的最小值是多少。输入输出样例输入 #18 314731243输出 #16
2020-07-06 15:57:33 742
原创 Day27 洛谷P1601 A+B problem(高精加法)
题目背景无题目描述高精度加法,相当于a+b problem,不用考虑负数.输入格式分两行输入。a,b<=10^{500}输出格式输出只有一行,代表a+b的值输入输出样例输入 #111输出 #12答案(在纸上模拟17903+6397)#include <stdio.h>#include<string.h>int main(){ char a[500],b[500]; scanf("%s",a); scanf("%s",b); int A
2020-07-05 20:51:16 183
原创 Day26 洛谷P1567 统计天数(不用数组)
题目描述炎热的夏日,KC 非常的不爽。他宁可忍受北极的寒冷,也不愿忍受厦门的夏天。最近,他开始研究天气的变化。他希望用研究的结果预测未来的天气。经历千辛万苦,他收集了连续 N天(0<N<10^6)的最高气温数据。现在,他想知道最高气温一直上升的最长连续天数。输入格式第 1 行:一个整数 N。第 2 行:N个空格隔开的整数,表示连续 N 天的最高气温。(0<N<10^9)输出格式1 行:一个整数,表示最高气温一直上升的最长连续天数。输入输出样例输入 #1复制10
2020-07-04 18:13:33 224
原创 Day25 洛谷P1482 Cantor表(升级版)
题目描述现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的:1/1 1/2 1/3 1/4 1/5 …2/1 2/2 2/3 2/4 …3/1 3/2 3/3 …4/1 4/2 …5/1 …… 这次与NOIp1999第一题不同的是:这次需输入两个分数(不一定是最简分数),算出这两个分数的积(注意该约分的要约分)后输出积在原表的第几列第几行(若积是整数或1/积,则以“积/1”或“1/积”结算)。输入格式共两行。每行输入一个分数(不一定是
2020-07-03 21:18:30 190
原创 Day24 P1480 A/B Problem(高精除以低精除法)
题目描述输入两个整数 a,b,输出它们的商。输入格式两行,第一行是被除数,第二行是除数。输出格式一行,商的整数部分。输入输出样例输入 #1102输出 #15说明/提示0≤a≤10^50001≤b≤10^9答案1(C语言模拟竖式除法)#include <stdio.h>#include<string.h>int i;int main(){ char a[5000]; int b; int c[5000]; int total=0; sca
2020-07-03 00:23:14 329
原创 咕咕咕好久之后的Day23 洛谷P1428 小鱼比可爱
题目人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。输入格式第一行输入一个整数 n,表示鱼的数目。第二行内输入 n 个整数,
2020-07-01 18:25:10 132
原创 Day22 洛谷P1427 小鱼的数字游戏(栈)
题目描述小鱼最近被要求参加一个数字游戏,要求它把看到的一串数字 ai(长度不一定,以 0 结束),记住了然后反着念出来(表示结束的数字 0 就不要念出来了)。这对小鱼的那点记忆力来说实在是太难了,你也不想想小鱼的整个脑袋才多大,其中一部分还是好吃的肉!所以请你帮小鱼编程解决这个问题。输入格式一行内输入一串整数,以 0 结束,以空格间隔。输出格式一行内倒着输出这一串整数,以空格间隔。输入输出样例输入 #13 65 23 5 34 1 30 0输出 #130 1 34 5 23 65 3说
2020-06-24 19:01:39 969
原创 Day21 洛谷P1424 小鱼的航程(改进版)
题目背景原来的题目太简单,现改进让小鱼周末也休息,请已经做过重做该题。题目描述有一只小鱼,它平日每天游泳 250 公里,周末休息(实行双休日),假设从周 (1≤x≤7) 开始算起,过了n(n≤10^6) 天以后,小鱼一共累计游泳了多少公里呢?输入格式输入两个整数x,n(表示从周x算起,经过n天)。输出格式输出一个整数,表示小鱼累计游泳了多少公里。输入输出样例输入 #13 10输出 #12000答案#include<stdio.h>int main(){ int
2020-06-23 21:13:52 117
原创 Day20 洛谷P1420 最长连号
题目描述输入 n 个正整数,要求输出最长的连号的长度。连号指从小到大连续自然数。输入格式第一行,一个整数 n。第二行,n 个整数 ai,之间用空格隔开。输出格式一个数,最长连号的个数。输入输出样例输入 #1103 5 6 2 3 4 5 6 8 9输出 #15说明/提示数据规模与约定对于100% 的数据,保证n≤10^4 ,ai<=10^9。答案#include<stdio.h>int ow[10000];int cnt=1;int main()
2020-06-22 23:49:24 341
原创 Day19 洛谷P1303 A*B Problem(高精度)
题目描述求两数的积。输入格式两行,两个整数。输出格式一行一个整数表示乘积。输入输出样例输入 #1复制1 2输出 #1复制2说明/提示每个数字不超过 10^{2000},需用高精。答案#include<stdio.h>#include<string.h>int main(){ char num1[2000]; char num2[2000]; scanf("%s",num1); scanf("%s",num2); int n=strle
2020-06-21 23:59:01 165
原创 Day18 洛谷P1321 单词覆盖还原
题目一个长度为 l(3≤l≤255) 的字符串中被反复贴有 boy 和 girl 两单词,后贴上的可能覆盖已贴上的单词(没有被覆盖的用句点表示),最终每个单词至少有一个字符没有被覆盖。问贴有几个 boy 几个 girl?输入格式一行被被反复贴有boy和girl两单词的字符串。输出格式两行,两个整数。第一行为boy的个数,第二行为girl的个数。输入输出样例输入 #1......boyogirlyy......girl.......输出 #142答案#include<std
2020-06-20 20:27:30 351
原创 Day15 洛谷P1307 数字反转(字符串/有陷阱)
#include<stdio.h>#include<stdlib.h>#include<string.h>int main(){ int i; int b=3; char num[20]; gets(num); i=strlen(num)-1; if (num[0]=='-') { printf("-"); if (num[i]=='0'){ while (num[i]=='0'){ i--; } for (;i>0
2020-06-18 09:53:59 133
原创 Day14 洛谷P1296 奶牛的耳语(输入不一定是从小到大的,要先排序!!)
题目在你的养牛场,所有的奶牛都养在一排呈直线的牛栏中。一共有 n 头奶牛,其中第 i 头牛在直线上所处的位置可以用一个整数坐标 p_i(0< p_i <10^8)来表示。在无聊的日子里,奶牛们常常在自己的牛栏里与其它奶牛交流一些八卦新闻。每头奶牛发出的声音响度是一样的,而由于声波的能量衰减,某头奶牛发出的声音只能被与它距离不超过 d(0 < d< 10^4) 的奶牛所听到,这样这对奶牛就称为可以相互交流的。现在给出所有奶牛的位置和声音所能传播的最远距离d ,请你编个程序来计算你的养
2020-06-16 19:34:59 330
原创 Day13 洛谷P1200 你的飞碟在这儿Your Ride Is Here
题目描述众所周知,在每一个彗星后都有一只UFO。这些UFO时常来收集地球上的忠诚支持者。不幸的是,他们的飞碟每次出行都只能带上一组支持者。因此,他们要用一种聪明的方案让这些小组提前知道谁会被彗星带走。他们为每个彗星起了一个名字,通过这些名字来决定这个小组是不是被带走的那个特定的小组(你认为是谁给这些彗星取的名字呢?)。关于如何搭配的细节会在下面告诉你;你的任务是写一个程序,通过小组名和彗星名来决定这个小组是否能被那颗彗星后面的UFO带走。小组名和彗星名都以下列方式转换成一个数字:最终的数字就是名字中所有
2020-06-15 21:42:48 138
原创 Day12 洛谷P1181 数列分段Section I
题目对于给定的一个长度为N的正整数数列A[i],现要将其分成连续的若干段,并且每段和不超过M(可以等于M),问最少能将其分成多少段使得满足要求。输入格式第1行包含两个正整数N,M,表示了数列A[i]的长度与每段和的最大值,第2行包含N个空格隔开的非负整数A[i],如题目所述。输出格式仅包含一个正整数,输出最少划分的段数。输入输出样例输入样例#1:5 64 2 4 5 1输出样例#1:3说明提示对于20%的数据,有N≤10;对于40%的数据,有N≤1000;对于100%的数据,有
2020-06-14 23:49:47 211
原创 Day11 洛谷P1179 数字统计
题目描述请统计某个给定范围[L, R]的所有整数中,数字 2 出现的次数。比如给定范围[2, 22],数字 2 在数 2 中出现了 1 次,在数 12 中出现 1 次,在数 20 中出现1次,在数 21 中出现 1 次,在数 22 中出现 2 次,所以数字 2 在该范围内一共出现了 6次。输入输出格式输入:2个正整数 L 和 R,之间用一个空格隔开。输出:输出共 1 行,表示数字 2 出现的次数。输入输出样例输出样例#1:【输入样例1】2 22【输入样例2】2 100输出样例#
2020-06-13 16:59:31 185
原创 Day10 洛谷P1177 快速排序
题目利用快速排序算法将读入的 N 个数从小到大排序后输出。输入输出格式及样例略答案#include<iostream>using namespace std;int n,a[1000001];void qsort(int l,int r)//应用二分思想{ int mid=a[(l+r)/2];//中间数 int i=l,j=r; do{ while(a[i]<mid) i++;//查找左半部分比中间数大的数 whi
2020-06-12 23:57:18 192
原创 Day9 洛谷P1161 开灯(异或的用法\怎样优雅的开一个巨大的数组)
题目描述在一条无限长的路上,有一排无限长的路灯,编号为1,2,3,4,…。每一盏灯只有两种可能的状态,开或者关。如果按一下某一盏灯的开关,那么这盏灯的状态将发生改变。如果原来是开,将变成关。如果原来是关,将变成开。在刚开始的时候,所有的灯都是关的。小明每次可以进行如下的操作:指定两个数,a,t(a为实数,t为正整数)。将编号为[a],[2×a],[3×a],…,[t×a]的灯的开关各按一次。其中[k]表示实数k的整数部分。在小明进行了n次操作后,小明突然发现,这个时候只有一盏灯是开的,小明很想知道
2020-06-11 22:39:31 318
原创 Day8 洛谷P1151 子数整数(输出的数据点过多可能导致wa,就在输出中加个\n)
答案(暴力)#include<stdio.h>#include<stdlib.h>#include<string.h>int main(){ int K; int i,j; int a,b,c,d,e; int sub1,sub2,sub3; int jud=0,sto; scanf("%d",&K); for (i=10000;i<=30000;i++) { sto=i; e=i%10;//i=12345,a=5 .
2020-06-10 21:19:31 359
原创 Day8 洛谷P1150 Peter的烟
答案#include<stdio.h>int main(){ int n,k;//n根烟,k个烟蒂换一根烟 scanf("%d %d",&n,&k); int butt=n,add,total=n;//定义烟头数,每轮交换的烟数,抽烟总数 while (butt/k)//当还可以换烟的时候,就继续循环 { add=butt/k;//这一轮可以换butt/k根烟 total+=add;//吸烟总数加add butt=butt+add-k*add;//.
2020-06-09 22:25:20 250
原创 Day7 洛谷P1138 第k小整数(桶排序)
题目现有n个正整数,n≤10000,要求出这n个正整数中的第k个最小整数(相同大小的整数只计算一次),k≤1000,正整数均小于30000。输入输出格式输入格式:第一行为n和k; 第二行开始为n个正整数的值,整数间用空格隔开。输出格式:第k个最小整数的值;若无解,则输出“NO RESULT”。输入输出样例输入样例#1:10 31 3 3 7 2 5 1 2 4 6输出样例#1:3答案#include<stdio.h>int main(){ int n,k;//代
2020-06-08 23:54:41 892
原创 Day6 洛谷P1116 车厢重组(冒泡排序)
题目描述在一个旧式的火车站旁边有一座桥,其桥面可以绕河中心的桥墩水平旋转。一个车站的职工发现桥的长度最多能容纳两节车厢,如果将桥旋转180度,则可以把相邻两节车厢的位置交换,用这种方法可以重新排列车厢的顺序。于是他就负责用这座桥将进站的车厢按车厢号从小到大排列。他退休后,火车站决定将这一工作自动化,其中一项重要的工作是编一个程序,输入初始的车厢顺序,计算最少用多少步就能将车厢排序。输入格式共两行。第一行是车厢总数N(≤10000)。第二行是N个不同的数表示初始的车厢顺序。输出格式一个整数,最少
2020-06-07 22:20:34 416
原创 Day4 洛谷P1055 ISDN号码
题目每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括99位数字、11位识别码和33位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号),最后一位是识别码,例如0-670-82162-4就是一个标准的ISBN码。ISBN码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符-之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔符后的五位数字代表该书在该出版社的编号;最后一位为识别码。识别码的计算方法如下:首位数字乘以1加上次位数字乘以2…
2020-06-05 23:24:33 241
原创 Day3 洛谷P1046 陶陶摘苹果(水题)
(很久以前爆零的一道很水很水的题,究其原因,发现竟然是题目中摸高和树高大小比反了。。)#include <stdio.h> int main(){ int i; int length[10]; int abi,num=0; for (i=0;i<10;i++) { scanf("%d",&length[i]); } scanf("%d",&abi); abi+=30; for (i=0;i<10;i++) { if (length[
2020-06-04 21:55:27 135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人