摘要: [2001年NOIP普及组] 数的计算 分析: a[1] = 1 a[2] = a[1] + 1 a[3] = a[1] + a[2] + 1 a[4] = a[1] + a[2] + 1 a[6] = a[1] + a[2] +a[3] + 1 eg: 满足6的数有“6, 3 6, 1 3 6, 阅读全文
posted @ 2022-08-15 11:26 shanyingrui 阅读(155) 评论(0) 推荐(0) 编辑
摘要: [2001年NOIP普及组] 最大公约数和最小公倍数问题 思路:可以运用暴力枚举法。先用 两个数的乘积=他们的最大公约数*最小公倍数 的公式求出乘积num,再在已知范围内暴力搜素能整除num的数i,如果这个i与num/i的最大公约数与题目所给一致的话,记录数据的计数器就+1,最后输出计数器的值就是了 阅读全文
posted @ 2022-08-14 19:54 shanyingrui 阅读(132) 评论(0) 推荐(0) 编辑
摘要: [2011年NOIP提高组] 铺地毯 思路:运用暴力枚举法。开一个结构体存地毯信息,然后铺上地毯。然后在根据要找的地点,与输入顺序反着一一枚举来找符合的地毯(因为地毯会覆盖,先铺的在下面,后铺的才在上面),最后输出。如果找不到,就根据题目输出-1,。 代码如下: #include<cstdio> s 阅读全文
posted @ 2022-08-14 19:37 shanyingrui 阅读(114) 评论(0) 推荐(0) 编辑
摘要: [NOIP1998 普及组] 三连击 思路:本题可以运用暴力枚举法,因为题目中有9个数字,所组成的3个三位数a,b,c的各个位数上的数的乘积与这已知的9个数的乘积相等,并且b=2*a,c=3*a。从能组成的最小三位数开始循坏,找满足条件的数即可。 代码如下: #include<iostream> # 阅读全文
posted @ 2022-08-14 19:17 shanyingrui 阅读(168) 评论(0) 推荐(0) 编辑
摘要: [2000年NOIP普及组] 税收与补贴问题 思路:先开一个二维数组,将商品在各个价位的销售量以表格的方式记录下来,再加上补贴或税收,得出最大利润与期望的比较,最后输出 代码如下: #include<iostream> using namespace std; int main() { int a[ 阅读全文
posted @ 2022-08-14 19:09 shanyingrui 阅读(202) 评论(0) 推荐(0) 编辑
摘要: [2016年NOIP普及组] 回文日期 思路:一个 8 位数字是回文的,也就是对于所有的 i(1≤i≤8 )从左向右数的第 i 个数字和第 9-i 个数字(即从右向左数的第i个数字)是相同的。那么每年都最多有一个回文日期。可以将每天所对应的回文日期求出来,最后直接与题目所给范围比较,用计数器记录符合 阅读全文
posted @ 2022-08-14 16:29 shanyingrui 阅读(120) 评论(0) 推荐(0) 编辑
摘要: [NOIP2001 提高组] 一元三次方程求解 思路:本题运用暴力枚举法。为了便于求解,设根的值域(-100至100之间)中有i, i.j间的距离(0.001)满足精度要求(精确到小数点后2位)。 分析:本题说明方程 f(x) = 0f(x)=0,若存在 2 个数 x1​ 和 x2​,且 x1​<x 阅读全文
posted @ 2022-08-14 08:49 shanyingrui 阅读(113) 评论(0) 推荐(0) 编辑
摘要: [2008年NOIP普及组] 排座椅 思路:本题考察的是贪心和排序 代码如下: #include<bits/stdc++.h> using namespace std; int ak[1005],al[1005];//横排的前k个 、纵排的前l个 int a1[1005],b1[1005];//横纵 阅读全文
posted @ 2022-08-14 08:40 shanyingrui 阅读(202) 评论(0) 推荐(0) 编辑
摘要: [2009年NOIP普及组] 分数线划定 思路:用结构体记录选手的具体信息,用sort()函数降序排序。按照公式算出分数线,循环找出过线的人,同时用计数器记录,输出分数线和过线总人数。最后循环根据笔试成绩降序输出过线人的具体信息。 代码如下: #include<iostream> #include< 阅读全文
posted @ 2022-08-13 17:16 shanyingrui 阅读(203) 评论(0) 推荐(0) 编辑
摘要: [2007年NOIP提高组] 统计数字 思路:将输入的数字将输入的统计数字存入数组,根据题意由小到大排序(我用的sort()函数),这样重复的数就挨在一起。排序后开一个计数器,记录重复数的个数,输出。 代码如下: #include<algorithm> #include<iostream> #inc 阅读全文
posted @ 2022-08-13 17:05 shanyingrui 阅读(160) 评论(0) 推荐(0) 编辑