自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 P1014 [NOIP1999 普及组] Cantor 表

算法3:发现第i条斜线(即分子分母之和=i+1的所有项)中包含i*(i-1)/2+1至i*(i+1)中的每一项,所以可以二分分子分母之和,再根据分子分母之和的奇偶性直接计算第n项。1/1 , 1/2 , 3/1 , 1/4 , 5/1 , 1/6……时间复杂度O(㏒₂n),可以通过n≤10^18,加上高精可通过n≤10^1000。算法2.5:枚举第n项在哪一行,计算得出答案,比算法2好写,时间复杂度O(n),可以通过本题n≤10^7。时间复杂度O(√n),可以通过n≤10^14。

2024-06-16 13:38:35 352

原创 P1013 [NOIP1998 提高组] 进制位

稍稍思考一下,不可能存在没有两位数的情况。显然,若 22 是一个新的数,那么又会产生 1+2=31+2=3 和 2+2=42+2=4……如此下去,表中的 𝑁−1N−1 个数必然是 𝑁−1N−1 进制下的 0∼𝑁−20∼N−2 ,也就必然会产生两位数。假设已知当前的表为 𝑘k 进制,考虑一个数它为 𝑥x,那么 𝑥+𝑘−𝑥∼𝑥+𝑘−1x+k−x∼x+k−1 必然都是两位数,一共 𝑥+𝑘−1−(𝑥+𝑘−𝑥)+1=𝑥+𝑘−1−𝑥−𝑘+𝑥+1=𝑥x+k−1−(x+k−x)+1=x+k−1−x−k+x+1=x 个。

2024-06-16 13:36:39 226

原创 信息学奥赛一本通C++语言——1177:奇数单增序列

给定一个长度为N(不大于500)的正整数序列,请将其中的所有奇数取出,并按升序输出。结合结构体与排序,非常简单的题目,直接上代码,只是最后的‘,’需要注意一。增序输出的奇数序列,数据之间以逗号间隔。数据保证至少有一个奇数。第2行为 N 个正整数,其间用空格间隔。

2023-09-10 16:22:52 977 1

原创 1091:求阶乘的和

观察阶乘加和公式,第1项是1!,第i-1项是( i − 1 )!每次循环,对v乘以i,即可得到新的一项(i的阶乘),并将该项加入和sum中。设置阶乘函数,每次调用阶乘函数求一个数的阶乘,而后将n个数的阶乘加和。该解法的时间复杂度为O ( n ) O(n)O(n),优于解法1,2。将求阶乘的逻辑写在求和的循环的内部,形成循环嵌套。该解法时间复杂度:O ( n ^2 )该解法时间复杂度:O ( n 2 )解法2:设求阶乘函数。

2023-09-02 15:13:31 362

原创 1153:绝对素数

如果一个自然数是素数,且它的数字位置经过对换后仍为素数,则称为绝对素数,例如13。试求出所有二位绝对素数。所有二位绝对素数(由小到大,一个数一行)。

2023-07-26 17:20:56 706 2

原创 1137 加密的病历单

在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得过好成绩后,主任又额外交给她一项任务,解密抗战时期被加密过的一些伤员的名单。1.原文中所有的字符都在字母表中被循环左移了三个位置(dec -> abz)经过研究,小英发现了如下加密规律(括号中是一个“原文 -> 密文”的例子)小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。j++)//以字串长度每个字符做。t++)//向右移动3次。j++){//大小写转换。‘Z’+1)//超出字符范围,循环回来。

2023-05-13 21:45:46 224

原创 【1062】最高的分数

【题目描述及其目的】1062:最高的分数时间限制: 1000 ms 内存限制: 65536 KB提交数: 72660 通过数: 53552【题目描述】孙老师讲授的《计算概论》这门课期中考试刚刚结束,他想知道考试中取得的最高分数。因为人数比较多,他觉得这件事情交给计算机来做比较方便。你能帮孙老师解决这个问题吗?【输入】输入两行,第一行为整数n(1 <= n < 100),表示参加这次考试的人数.第二行是这n个学生的成绩,相邻两个数之间用单个空格隔开。

2023-04-15 14:38:56 411

原创 【1063】最大跨度值

一共2行,第一行为序列的个数n(1 <= n <= 1000),第二行为序列的n个不超过1000的非负整数,整数之间以一个空格分隔。给定一个长度为n的非负整数序列,请计算序列的最大跨度值(最大跨度值 = 最大值减去最小值)。时间限制: 1000 ms 内存限制: 65536 KB。提交数: 85749 通过数: 50868。输出一行,表示序列的最大跨度值。1063:最大跨度值。

2023-04-15 14:04:37 92

原创 【1041】奇偶数判断

输出仅一行,如果n是奇数,输出odd;如果n是偶数,输出even。输入仅一行,一个大于零的正整数n。

2023-04-15 13:47:10 164 1

原创 【1065】 奇数

计算非负整数m到n(包括m和n)之间的所有奇数的和,其中,m 不大于 n,且n 不大于300。例如m = 2时,反正2又不会参与求和,可以让m + 1变为3,即从3开始。数据类型:0 ≤ m ≤ n ≤ 300,很明显,m和n之间的奇数和远小于int类型的最大值,可选int类型。求m~n之间的奇数和,可以对每一个数进行奇偶判断,如果是奇数,则求和。两个数 m 和 n,两个数以一个空格分开,其中 0 ≤ m ≤ n ≤ 300。输出一行,包含一个整数,表示m到n(包括m和n)之间的所有奇数的和。

2023-04-08 15:16:07 868 2

原创 【1064】奥运奖牌统计

输入第1行是A国参与决赛项目的天数n,其后n行,每一行是该国某一天获得的金、银、铜牌数目。n天的获奖情况应使用循环来完成,即循环n次,每次代表每天获得的奖牌情况,金银铜牌分别用Jin、Yin、Tong三个变量来表示。在输入后,统计每一种奖牌的数目。声明4个int类型变量JinSum、YinSum、TongSum、sum,初值都为0,分别代表n天中获得的金牌总数、银牌总数、铜牌总数、总牌数。输入n+1行,第1行是A国参与决赛项目的天数n,其后n行,每一行是该国某一天获得的金、银、铜牌数目,以一个空格分开。

2023-04-08 13:49:46 442 1

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除