- 博客(110)
- 资源 (2)
- 问答 (7)
- 收藏
- 关注
原创 P1255 数楼梯(高精度)
题目描述楼梯有 N 阶,上楼可以一步上一阶,也可以一步上二阶。编一个程序,计算共有多少种不同的走法。输入格式一个数字,楼梯数。输出格式输出走的方式总数。输入输出样例输入 #14输出 #15说明/提示对于60%的数据,N≤50; 对于100%的数据,1≤N≤5000。总的来说,不算难的一道题,很容易想到到第n阶的方法数等于到第n-1阶的方法数与到第n-2阶的方法数之和,因为第n-1到第n阶需要1步,因为第n-2到第n阶需要2步。这道题的关键在..
2022-02-28 18:28:36
587
原创 P1104 生日
题目描述cjf 君想调查学校 OI 组每个同学的生日,并按照年龄从大到小的顺序排序。但cjf君最近作业很多,没有时间,所以请你帮她排序。输入格式有2行,第1行为OI组总人数n;第2行至第n+1行分别是每人的姓名s、出生年y、月m、日d。输出格式有n行,即n个生日从大到小同学的姓名。(如果有两个同学生日相同,输入靠后的同学先输出)输入输出样例输入 #13Yangchu 1992 4 23Qiujingya 1993 10 13Luowen 1991 8 1
2022-02-18 13:36:47
785
原创 P1097 [NOIP2007 提高组]统计数字
题目描述某次科研调查时得到了nn个自然数,每个数均不超过1500000000(1.5×10^9)。已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。输入格式共n+1行。第一行是整数n,表示自然数的个数;第2至n+1每行一个自然数。输出格式共m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。每行输出2个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。输入输出样例输入输出样例输入
2022-02-17 14:55:26
3206
1
原创 LG. Hankson 的趣味题,C语言
【题目描述】Hanks博士是BT(Bio-Tech,生物技术)领域的知名专家,他的儿子名叫Hankson。现在,刚刚放学回家的Hankson正在思考一个有趣的问题。今天在课堂上,老师讲解了如何求两个正整数c1和c2的最大公约数和最小公倍数。现在Hankson认为自己已经熟练地掌握了这些知识,他开始思考一个“求公约数”和“求公倍数”之类问题的“逆问题”,这个问题是这样的:已知正整数a0,a1,b0,b1a0,a1,b0,b1,设某未知正整数x满足: x和a0的最大公约数是a1; x和b
2022-02-15 12:03:36
490
2
原创 C语言,进制转换,十进制转换为负进制
在负进制数中是用 −R 作为基数,例如 −15(十进制)相当于 110001 (−2进制),并且它可以被表示为 2 的幂级数的和数:输入格式输入的每行有两个输入数据。第一个是十进制数 n。 第二个是负进制数的基数 −R。输出格式输出此负进制数及其基数,若此基数超过 10,则参照 16 进制的方式处理。输入输出样例输入 30000 -2输出 30000=11011010101110000(base-2)输入 -25000 -16输出 -25
2022-02-12 11:34:50
1349
原创 LG.阶乘之和,C语言
题目描述用高精度计算出 S=1!+2!+3!+⋯+n!(n≤50)。其中“!”表示阶乘,例如5!=5×4×3×2×1。输入格式一个正整数 n。输出格式一个正整数 S,表示计算结果。输入输出样例输入 3输出 9利用数组存储数的每一位。#include <stdio.h>int main(){ int i,j,n,w,x,temp;//w,x为进位 int num[100]={0},sum[100]={0};
2022-02-10 14:43:44
378
原创 C语言,子串,nc13253
题目描述给出一个正整数n,我们把1..n在k进制下的表示连起来记为s(n,k),例如s(16,16)=123456789ABCDEF10, s(5,2)=11011100101。现在对于给定的n和字符串t,我们想知道是否存在一个k(2 ≤ k ≤ 16),使得t是s(n,k)的子串。输入描述:第一行一个整数n(1 ≤ n ≤ 50,000)。第二行一个字符串t(长度 ≤ 1,000,000)输出描述:"yes"表示存在满足条件的k,否则输出"no"示例1输入8011
2022-02-07 11:18:18
602
原创 C语言,leetcode121.买卖股票的zuijia时机
给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。示例 1:输入:[7,1,5,3,6,4]输出:5解释:在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注...
2022-01-26 17:11:47
115
原创 53. 最大子数组和,C语言
给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。子数组是数组中的一个连续部分。示例 1:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组[4,-1,2,1] 的和最大,为6 。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [5,4,-1,7,8]输出:23可用方法:贪心若当前元素之前的和小于0,则丢弃当期元素之前的序列,从当前元素开始求...
2022-01-26 12:35:28
2376
原创 C语言,成绩排名,给出一个班的成绩情况,请计算平均分,并按平均分进行排名。
给出一个班的成绩情况,请计算平均分,并按平均分进行排名。输入 第一行是一个整数K,表示样例个数。每个样例的第一行是两个正整数N(N<=40)和M(M<=10),分别表示班上的人数信息,课程的门数。以后的N行,每行一个字符串和M个整数,字符串表示学生姓名(字符串不超过10个字符,只含英文字母),M个整数表示M门课的成绩。输出 每个样例输出一个排名结果,一行为一个学生的成绩信息。包含3个部分的信息,第一个是一个整数,表示排名,从1开始计数;第二部分是学生的姓名;第三部分是一个浮点数,表示学生
2022-01-25 12:40:20
2117
原创 C语言,轮转数组
给你一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右轮转 1 步: [7,1,2,3,4,5,6]向右轮转 2 步: [6,7,1,2,3,4,5]向右轮转 3 步: [5,6,7,1,2,3,4]示例2:输入:nums = [-1,-100,3,99], k = 2输出:[3,99,-1,-100]解释:向右轮转 1 步: [99,..
2022-01-21 11:28:06
265
原创 C语言,搜索插入位置
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4示例 4:输入: nums = [1,3,5,6], target = 0输出: 0示例 5:输入:.
2022-01-20 12:54:24
701
原创 C语言,圣诞树
输入描述:输入圣诞树的高度n,1<= n<= 100输出描述:输出对应的圣诞树示例1输入:1复制输出: * * * * * * *复制说明:示例2输入:2复制输出: * * * * * * * * * * * * * * * * * * * *复制说明:示例3输入:3复制输出:...
2022-01-18 14:51:37
1045
原创 NC31 第一个只出现一次的字符
描述在一个长为 字符串中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)数据范围:0 \le n \le 100000≤n≤10000,且字符串只有字母组成。要求:空间复杂度 O(n)O(n),时间复杂度 O(n)O(n)示例1输入:"google"返回值:4示例2输入:"aa"返回值:-1很简单的一道题#include <stdio.h>#include <string.h>
2022-01-17 12:39:24
80
原创 C语言,n条直线最多能将圆分成多少个区域
在一个圆上画N(条直线,问最多能将圆分成多少个区域?输入每行一个整数,表示画N条直线,输入遇到-1结束。输出每行输出一个整数,为对应测试样例的答案。要想把圆分成的块数最多,那么增加的每一条线都不能过前面所有的交点。圆面本身是一个部分;第一条直线只能穿过圆面本身这一个部分,画第一条直线时圆面加一个部分,最多分成1+1=2 块;第二条直线只能穿过两个部分,画第二条直线时圆面加两个部分,最多分成1+(1+2)=4 块;第三条直线只能穿过三个部分,画第三条直线时圆面加三个部分
2022-01-13 22:24:07
3008
原创 C语言,求区间内素数的个数
素数是指只能被1和它自己整除的数,特别的,1不是素数。比如,2,3,5,7都是素数。现给出正整数a和b(1<=a,b<=1,000,000),请计算a与b之间有多少个素数。输入 第一行是一个整数N,表示样例的个数。以后每行两个整数a和b。输出 每行输出一个整数,即a和b之间的素数个数。输入样例31 102 23 7输出样例413#include <stdio.h>#define p 1000005int num[p];int ma
2022-01-10 21:35:44
4761
原创 C语言,数码平方和
一个整数各个数码的平方和的个位数称为它的分类值。给你一个区间[a,b],和一个数码n,请求这个区间内多少数的分类值为n。 输入 第一行是一个整数K,表示样例的个数。每个样例占一行,为三个整数a,b,n(1<=a<=b<=100,000,0<=n<=9)。 输出 每行输出一个样例的结果。 Sample Input 41 9 411 19 ...
2022-01-10 21:12:38
256
原创 XTU,C语言,Clockwise Or Unclokwise
题目描述我们把一个字符串A按圆圈排列,你可以从圆圈上任意一个字符开始,顺时钟或者逆时钟读若干个字符,请问是否能得到给定的字符串B?比如字符串A="abcde",我们从第2个字符开始,逆时钟读3个字符,可以得到字符串"bae"。输入第一行是样例数T(1≤T≤100)。 每个样例的占两行,第一行是字符串A,第二行是字符串B,所有字符串都只含小写英文字母,且长度不超过100个字符。输出每行输出一个样例的结果,如果可以输出"Yes",否则输出"No"。样例输入5abcdecbae
2022-01-07 18:26:30
400
原创 C语言,给定字符串,切分输出
描述:给定一个由英文字符、数字、空格和英文标点符号组成的字符串,长度不超过2000,请将其切分为单词,要求去掉所有的非英文字母,每行输出一个单词。输入:Python was created in1990 by Guido van Rossum at Stichting Mathematisch Centrum in the Netherlands.输出:PythonwascreatedinbyGuidovanRossumatStichtingMat
2022-01-05 21:48:41
2807
原创 C语言,正方形
题目描述由火柴棍组成的一个n×n的正方形,按从上到下,从左到右的顺序给火柴棍编号,从1开始,比如下图中,一共有24根火柴棍。 问去掉若干个火柴棍之后,这个图形中还存在多少个正方形?如下图所示,n=3时,去掉12,17,23号火柴棒之后,还剩下5个正方形。输入第一行是一个整数T(1≤T≤1000),表示样例的个数。每个样例的第1行是两个整数n(1≤n≤50),表示图形的宽度。 样例的第2行首先是一个整数m(0≤m≤2n(n+1),表示去掉火柴棍的个数,后面接m个整数,表示去掉火柴棍的序
2021-12-29 23:55:13
1667
1
原创 C语言,输入一行单词序列,按照从小到大的顺序输出
描述输入一行单词序列,相邻单词之间由1个或多个空格间隔,请按照从小到大的顺序输出这些单词,要求重复的单词只输出一次。(区分大小写)格式一行单词序列,最少1个单词,最多100个单词,每个单词长度不超过50,单词之间用至少1个空格间隔。数据不含除字母、空格外的其他字符。输出格式按字典序输出这些单词,重复的单词只输出一次。样例输入样例ShewantstogotoPekingUniversitytostudyChinese输出样例ChinesePekingSheU...
2021-12-28 16:23:13
4295
原创 C语言,Robots
题目描述在一个n×m的格子上,机器人一开始位于左下角,它每次可以沿格子线往上或者往右行走一步。另外它还有一种技能,可以在一个格子中,从左下角跳到右上角。 请问,机器人从左下角到达右上角,一共有多少种不同的方法?输入第一行是一个整数T(1≤T≤10000),表示样例的个数。 以后每行一个样例为两个整数n,m(1≤n,m≤100)。输出每行输出一个样例的结果,因为这个数量可能很大,请将结果对109+7取模。样例输入3 1 1 2 1 2 2样例输出3 .
2021-12-14 17:50:16
925
3
原创 C语言,wave
题目描述一个n列的网格,从(0,0)网格点出发,波形存在平波(从(x,y)到(x+1,y)),上升波(从(x,y)到(x+1,y+1)),下降波(从(x,y)到(x+1,y−1))三种波形,请问从(0,0)出发,最终到达(n,0)的不同波形有多少种?如图,3列网格有7种不同的波形。输入第一行是样例数T(1≤T≤42)。 以后每行一个整数n(1≤n≤42)。输出每行输出一个样例的结果。样例输入3123样例输出137从一格到下一格有三种可...
2021-12-12 15:40:52
933
2
原创 XTU,C语言,数码和
题目描述一个10进制数n在2∼16进制下可以得到的不同的数码和,求在这些数码和中出现次数最多的数码和。 比如20,其中数码和2和4分别出现了3次,为最多出现次数。输入第一行是一个整数T(1≤T≤1000),表示样例的个数。 以后每行一个整数n(16≤n≤109)。输出依次输出各样例的结果,每个样例输出的第一行是最多的次数。然后,按数码和值的升序依次输出最多次的数码和,每行输出一种。每行先输出这个数码和的值,然后按进制的顺序输出出现这个数码和的进制,每个值之间用一个空格隔.
2021-12-10 15:27:22
1096
原创 XTU,C语言,Digit String
题目描述小明获得了一些密码的片段,包含0∼9,A∼F这些字符,他猜这些是某个进制下的一个整数的数码串。 小明想知道从2到16进制中,哪些进制下,这个数码串的对应的十进制整数值,等于n?输入存在不超过1000个样例,每行一个样例。 每行包括两部分,数码串(串长不超过31),整数n(1≤n≤109)输出每行输出一个样例的结果。 如果存在多个解,输出最小的那个进制。 如果没有满足的进制,输出"Impossible"。样例输入F 15F 1423 1125 13样例输出.
2021-12-10 13:52:49
1363
6
原创 XTU,C语言,唯一的子串
题目描述给一个字符串,求长度为m的所有不重复的子串。 比如字符串"aaab",我们求长度为2的子串,那么依次为"aa","aa","ab",那么不重复的子串为"aa","ab"输入第一行是一个整数K,表示样例的个数。 每个样例的第一行是一个整数m,表示所求子串的长度。 第二行是一个字符串,字符串全部由小写英文字母组成,长度不超过100。输出按字典序输出所有不重复子串,每个样例最后输出一个空行。样例输入2 2 aaab 3 aaab样例输出aa ab a
2021-12-07 20:55:44
745
5
原创 XTU,C语言,连分数
题目描述x=b1a1+b2a2+b3a3+⋯比如n=3,a1=1,a2=2,a3=3,b1=3,b2=2,b3=1时x=31+22+13=2113给定n,ai,i=1,2,…,n,请求x,并按最简方式表示x。输入第一个行是一个整数T(1≤T≤100),表示样例的个数。 以后每个样例的第一行为整数n(1≤n≤9); 第二行为n个整数,为ai,(1≤ai≤100); 第三行为n个整数,为bi,(1≤bi≤100)。输出按顺序输出一个样例的结果,如果结果为整数,输出整数;如果结果.
2021-12-05 22:42:05
1763
5
原创 XTU,C语言,矩形面积的并
题目描述给两个边平行于坐标轴的矩形,求两个矩形的面积并。输入存在多个样例,每个样例包括2行,每行是一个矩形,为矩形一个对角线端点的坐标x1,y1,x2,y2,0≤x1,y1,x2,y2≤1000。输出每行输出一个样例的结果。样例输入0 0 1 10 0 2 10 0 2 21 1 3 30 0 1 12 2 3 30 0 2 11 1 2 2 样例输出2723提示巨大的输入输出,请使用C风格的输入输出,避免超时。这题有相交与不相交两
2021-12-05 11:00:26
509
1
原创 XTU,C语言,Magic
题目描述6174是一个神奇的数字,你将一个4位数n(只要这4位数码不完全一样)所有数码按升序和降序分别得到A和B,取n=B-A,如果n不为6174的话,继续迭代上面的过程,直到n为6174。 比如no. n A B 0 1000 0001 10001 0999 0999 99902 8991 1899 99813 8082 0288 88204 8532 2358 85325 6174 请问需要迭代多少次才能达到6174?输入每行
2021-12-03 17:15:41
1096
原创 XTU,C语言,Cute String
题目描述Alice的记忆力不太好,如果一个句子中含的单词(每个单词之间用一个空格隔开)数量超过10,或者句子中字母种类(不区分大小写)超过10个,她就会记不住。现在给你若干个句子,请写个程序判断一下Alice是否能记住这些句子。输入存在多个样例。每行输入一个字符串,表示句子。字符串长度不超过200,只含英文字母和空格。输入数据保证每个单词之间只有一个空格,行末没有空格。输出对于每个样例,能记住,输出“Yes”,否则输出“No”。样例输入Alice is a smart gi
2021-12-02 15:09:44
276
原创 XTU,C语言,Least Common Multiple
题目描述一个集合,任取3个不同的元素,求其最小公倍数中最小的值是多少?输入第一行是样例数T(1≤T≤100)。 每个样例的第一行是一个整数n(3≤n≤50),表示集合元素的个数。 每个样例的第二行是n个整数a1,a2,…,an,1≤ai≤106。输出每个样例输出一行。样例输入352 3 5 7 1152 3 5 7 15612 3 2 1 6 4样例输出30154样例解释第一个样例,最小的公倍数为lcm(2,3,5)=30。第二个样例,最
2021-12-02 13:49:58
845
1
原创 XTU,C语言,String Hash
题目描述把字符串进行Hash,来判断字符串是否相等是一种很常见的技术。 对一个只含英文小写字母字符串进行Hash,一种比较简单的方法是把字符串看成一个26进制的数,a~z分别表示0~25,获得这个值后对某个素数p取模。但是因为a是0,所以"abc"和"bc"的Hash值肯定是一样的,为了解决这个问题,我们假定在字符串前加入字符b(即26进制数最高位为1)比如p=11,字符串"abc",相当于26进制数"1012",所以对应的十进制数为17604,所以哈希值为4。我们假定p=1000000007,请将给
2021-12-01 14:03:03
1026
原创 XTU,C语言,GCD
题目描述a和b的最大公约数(Greatest Common Divisor)是最大的d,d能整除a和b。如果gcd(a,b)=1,我们就称a和b是互素的。给一个区间[a,b],求与6互素的数的个数。比如区间[1,10],与6互素的数为1,5,7,所以一共是3个。输入第一行是一个整数K(K≤10,000),表示样例的个数。每个样例占一行,为区间[a,b],(1≤a≤b≤1,000,000,000)输出每行输出一个样例的结果样例输入21 101 1000000000
2021-11-29 22:19:22
589
原创 XTU,C语言,纸牌
题目描述有2N张纸牌,标号从1到2N。一次洗牌,可以将牌的排列改成N+1,1,N+2,2,...,2N,N。请问这样洗牌几次,可以让牌回到原始的状态。比如N=2时,1234->3142->4321->2413->1234 一共洗4次。输入每行输入一个整数N(1≤N≤10,000),N如果为0,表示输入结束,不需要处理。输出每行输出一个样例的结果。样例输入1 2 3 4 5 6 0样例输出2 4 3 6 10 12这道题
2021-11-29 13:39:20
416
原创 XTU,C语言,a+b VI
题目描述小明非常喜欢做a+b的算术题,为此他搜集了很多的练习题。 今天他拿到一个很古老的练习册,上面是使用罗马数字表示的。 小明不太擅长处理罗马数字,请你帮帮他,告诉他罗马数字对应的十进制数的值。 罗马数字是使用字母组合表示数字的,不同的字母表示的值如下表:字母 值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 表示规则如下:数字的值是为所有字母的值的和。比如说II=2,XIII=13
2021-11-28 16:55:59
253
原创 XTU,C语言,Matrix
题目描述一个矩阵An×m,矩阵按行依次为1∼nm。若干种指令,指令集如下: (以3×3的初始矩阵为例,结果矩阵列中为初始矩阵执行这条指令后的矩阵结果)指令 含义 指令示例 结果矩阵 IN n m 初始化为n×m的矩阵 IN 3 3 1 2 3 4 5 6 7 8 9 SR x y 交换矩阵的x,y行 SR 1 2 4 5 6 1 2 3 7 8 9 SC x y 交换矩阵的x,y列 SC 1 2
2021-11-27 22:51:57
337
原创 XTU,C语言,矩阵
题目描述编写一个程序,将1~n2按行依次填入n×n的矩阵,执行若干条行或者列的循环移动的指令,再将数字按行依次取出。指令如下:指令 含义 L x y x行循环左移y次 R x y x行循环右移y次 U x y x列循环上移y次 D x y x列循环下移y次 输入第一行是一个整数K,表示样例的个数。 每个样例的第一行是两个整数n(1≤n≤10)和m(1≤m≤1000),分别表示矩阵的大小和指令的条数。以后的m行是m条指令,矩阵的行列按1开始计
2021-11-27 14:09:07
753
原创 XTU,C语言,Prime Twins
题目描述如果n和n+2都是素数,我们称其为孪生素数,比如3和5,5和7都是孪生素数。 给你一个区间[a,b],请问期间有多少对孪生素数?输入第一行是一个整数K(K≤ 10000),表示样例的个数。 以后每行一个样例,为两个整数,a和b,1≤a≤b≤5000000。输出每行输出一个样例的结果。样例输入5 1 3 1 10 1 100 1 1000 1 5000000样例输出0 2 8 35 32463可以先打表将所有的素数筛选出来。我第一次做
2021-11-26 12:59:17
3401
7
原创 XTU,C语言,Diamond
题目描述根据给出的尺寸n输出一个字符钻石,比如n=3时,字符钻石为 C CBC CBABC CBC C 输入第一行是整数K,表示样例的个数。以后每行一个样例,为钻石的尺寸,n(1≤n≤26)输出依次输出每个样例的结果,每个样例的行末无空格,行首无多余的空格。样例输入3123样例输出A BBAB B C CBC CBABC CBC C 这道题可以通过循环来输出。将其分为上空格,上左,上右,下空格,下左,下右六个部
2021-11-25 23:19:09
852
原创 XTU,C语言,A+B V
题目描述小明很喜欢做a+b,他但经常忘记进位,所以他算88+12=90,而不是100。 现在你给了小明一些a+b的算式,请问他算出来会是什么?输入第一行是一个整数K,表示样例的个数。 每个样例占一行,为两个整数a,b,0≤a,b≤1e9。输出每行输出一个样例的结果,不要输出前导0。样例输入31 25 655 55样例输出310这道题不是很难,详情见下#include <stdio.h>#include <math.h>
2021-11-25 13:09:09
390
一个简单的登录界面,可供参考
2022-08-24
Fragment的四种跳转方式:Fragment_Activity_skiptest.
2022-08-07
简单的课程信息管理系统
2022-06-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅