信息学奥赛一本通
weixin_45770392
这个作者很懒,什么都没留下…
展开
-
摘花生ACM
【题目描述】Hello Kitty想摘点花生送给她喜欢的米老鼠。她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来。地里每个道路的交叉点上都有种着一株花生苗,上面有若干颗花生,经过一株花生苗就能摘走该它上面所有的花生。Hello Kitty只能向东或向南走,不能向西或向北走。问Hello Kitty最多能够摘到多少颗花生。【输入】第一行是一个整数T,代表一共有多少组数据。1≤T≤100接下来是T组数据。每组数据的第一行是两个整数,分别代表花生苗的行数R和列数 C(1≤R,C≤原创 2020-08-31 09:12:37 · 97 阅读 · 0 评论 -
不重复地输出数c++
【题目描述】输入n个数,从小到大将它们输出,重复的数只输出一次。保证不同的数不超过500个。【输入】第一行是一个整数n。1 ≤ n ≤ 100000。之后n行,每行一个整数。整数大小在int范围内。【输出】一行,从小到大不重复地输出这些数,相邻两个数之间用单个空格隔开。【输入样例】52 4 4 5 1【输出样例】1 2 4 5#include<iostream>#include<algorithm>using namespace std;int main原创 2020-08-18 15:54:31 · 1550 阅读 · 0 评论 -
和为给定数c++
【题目描述】给出若干个整数,询问其中是否有一对数的和等于给定的数。【输入】第一行是整数n(0 < n ≤ 100,000),表示有n个整数。第二行是n个整数。整数的范围是在0到108之间。第三行是一个整数m(0≤m≤230),表示需要得到的和。【输出】若存在和为m的数对,输出两个整数,小的在前,大的在后,中间用单个空格隔开。若有多个数对满足条件,选择数对中较小的数更小的。若找不到符合要求的数对,输出一行No。【输入样例】42 5 1 46【输出样例】1 5#include&原创 2020-08-18 15:44:59 · 2308 阅读 · 1 评论 -
二分法求函数的零点c++
题目描述】有函数:f(x)=x5−15x4+85x3−225x2+274^x−121已知f(1.5)>0 ,f(2.4)<0 且方程f(x)=0 在区间[1.5,2.4] 有且只有一个根,请用二分法求出该根。【输入】(无)【输出】该方程在区间[1.5,2.4]中的根。要求四舍五入到小数点后6位。【输入样例】(无)【输出样例】(无)#include<iostream>#include<cmath>#include<iomanip>us原创 2020-08-18 14:58:15 · 2800 阅读 · 0 评论 -
2011 ACM c++
【题目描述】已知长度最大为200位的正整数n,请求出2011n的后四位。【输入】第一行为一个正整数k,代表有k组数据(k≤200),接下来的k行,每行都有一个正整数n,n的位数≤200。【输出】每一个n的结果为一个整数占一行,若不足4位,去除高位多余的0。【输入样例】3528792【输出样例】1051815521题目是高精度,所以要用字符串储存数字n#include<iostream>using namespace std;int main(){ int原创 2020-08-17 15:10:03 · 185 阅读 · 1 评论 -
分解因数c++
分解因数【题目描述】给出一个正整数aa,要求分解成若干个正整数的乘积,即a=a1×a2×a3×…×an,并且1<a1≤a2≤a3≤…≤an,问这样的分解的种数有多少。注意到a=a也是一种分解。【输入】第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a(1<a<32768)。【输出】n行,每行输出对应一个输入。输出应是一个正整数,指明满足要求的分解的种数。【输入样例】2220【输出样例】14#include<iostream&g原创 2020-08-10 17:04:19 · 1836 阅读 · 0 评论 -
判断整除c++
判断整除【题目描述】一个给定的正整数序列,在每个数之前都插入+号或-号后计算它们的和。比如序列:1、2、4共有8种可能的序列:(+1) + (+2) + (+4) = 7(+1) + (+2) + (-4) = -1(+1) + (-2) + (+4) = 3(+1) + (-2) + (-4) = -5(-1) + (+2) + (+4) = 5(-1) + (+2) + (-4) = -3(-1) + (-2) + (+4) = 1(-1) + (-2) + (-4)原创 2020-08-10 16:54:50 · 5026 阅读 · 0 评论 -
判断元素是否存在c++
判断元素是否存在c++(信息学奥赛一本通)题目有一个集合M是这样生成的:(1) 已知k是集合M的元素; (2) 如果y是M的元素,那么,2y+1和3y+1都是M的元素;(3) 除了上述二种情况外,没有别的数能够成为M的一个元素。问题:任意给定k和x,请判断x是否是M的元素。这里的k是无符号整数,x 不大于 100000,如果是,则输出YES,否则,输出NO。【输入】输入整数 k 和 x, 逗号间隔。【输出】如果是,则输出 YES,否则,输出NO。【输入样例】0,22【输出样例】YES使原创 2020-08-10 16:33:13 · 2135 阅读 · 1 评论