当前位置:首页 > 题解目录 > 正文内容

2021年青岛市程序设计竞赛试题(初中组)决赛

亿万年的星光4年前 (2021-05-29)题解目录2313

A.趣味三角(triangle.cpp) 

【题目描述】 

今天,新高一的OIer们第一次进入了机房。z老师想让他们喜欢上OI,于是给了他们每个人一个三角形。 这时候,小q秃发奇想,拿着手中的三角形,给大家出了一道题,请你帮助他们给小q一个正确的答案。 小q给了你两个整数 ,请输出杨辉三角前x行的所有数的和模a的值。 如果你不知道杨辉三角是什么,请看样例解释。 

【输入格式】

 每个测试点有多组测试数据。 每个测试点第一行一个正整数n表示数据组数。 接下来n行每行两个正整数a,x 表示一次询问。 

【输出格式】 

共T行,每行一个正整数,表示答案。 

【样例输入】

3
5 6
7 2
2 998244353


【样例输出】

3
3
1


【样例解释】

 杨辉三角如下: 

第一行: 1
第二行: 1 1
第三行: 1 2 1
第四行: 1 3 3 1
第五行: 1 4 6 4 1
第六行:  1 5 10 10 5

这个三角的生成方式如下: 1. 第 行( 是正整数)有 个数。 2. 记第 行从左到右数第 个数为 ( 都是正整数),则

image.png

可见前6 行的和为63 ,对5 取模后结果为3 。 前2 行的和为3 ,对 7取模后结果为3 。

【说明提示】

对于10% 的数据,满足 n<=5; 

对于20% 的数据,满足T=1,n<=50 ; 

对于40% 的数据,满足T<=10,n<=100; 

对于60% 的数据,满足n<=106 ; 

对于80% 的数据,满足N<=1018 ; 

对于100%的数据,满足 T<103,m<108,n<101000 保证 m为质数


B.跳格子(grid.cpp) 

【题目描述】
z老师不在,小q打开了u2!#u_f9f**30&8.io。——一个跳方格的小游戏。 

小q坐到了靠里的一排,认为不会被发现,但他身后是反光的玻璃窗。 这是一个致命的失误。 

现在z老师对这个游戏产生了兴趣,他准备尝试一下。 z老师有一个 n*m的网格,每个格子上都写着一个数字。为方便描述,令左上角的网格为(1,1) ,右 下角的网格为 (n,m)。 z老师可以进入最下方第 n行的任意一个网格,并按照以下规则进行游戏:

 设z老师 第一次进入第 i行的位置为(i,ri) : 如果z老师在 (i,ri),则他只能向左或向上跳。

否则他可以向左,向右或向上跳。 

z老师不能跳出网格,除非他在第 1行,这代表结束整场游戏。 定义一局游戏的得分为所有z老师经过的格子上的数字之和。z老师想求出得分的最小值。 

【输入格式】

第一行两个整数n,m ,分别表示网格的行数和列数。 

接下来n 行,每行 m个整数ai,j ,表示 (i,j)上的数。 

【输出格式】

一行一个整数,表示最小值。 

【样例输入】

5 4
-21589 7315 -8753 28191
21541 1236 2038 11098
4408 8833 3280 -28896
19889 21948 -1769 25387
22241 888 -6112 28106

【样例输出】

-25590

【说明提示】

对于5%的数据,ai,j<=0

对于另外10%的数据,n,m<=5

对于另外15%的数据,n=2

对于另外20%的数据,n,m<=90

对于另外20%的数据,n,m<=400

对于全部数据,1<=n,m<=1000,  -106<ai,j<106


C.亮度调节(inverse.cpp) 

【题目描述】 

z老师很烦恼:偌大的机房空无一人,一排电脑屏幕却还亮着。 z老师更烦恼的是:这排电脑屏幕的亮度并不统一,有些很亮,有些很暗。 “这不好……至少要把亮度调整一下吧!” 

老师面前有一排 n台电脑,每一台电脑都有一个用整数表示的亮度值 ai(可能为负数)。 在z老师走进机房时,他并不烦恼。 对于任意两台电脑,如果左边的亮度值大于右边的 (i<j,ai>aj),他就会获得1 的烦恼值。 z老师可以进行的操作是,把一台电脑的亮度值修改为它的相反数。 他可以修改任意多次,以使得自己最终的烦恼值最小,而你需要求出这个最小值。 

【输入格式】

 第1 行,一个整数n 表示有n 台电脑。 

第 2行共 n个整数ai ,表示从左往右第i台电脑的初始亮度值。 

【输出格式】

 一行一个整数,表示最小的烦恼值。 

【样例输入】

18
-1 -7 0 -2 -1 -7 5 1 1 6 -9 2 -7 9 0 -5 0 5

 【样例输出】

36

 【说明/提示】

 对于30% 的数据,n<=18 ; 

对于另外 5%的数据, |ai|=1; 

对于另外 5%的数据, |ai|<=1;

 对于 70%的数据,n<=5*103 (包含前面两档部分分);

 对于100% 的数据, 1<=n<106, 0<=|ai|<=105

扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

【题解】牛的阵容

【题目描述】农民约翰雇一个专业摄影师给他的奶牛拍照。由于约翰的牛有很多品种,他喜欢他的照片包含每个品种至少一头牛。约翰的牛都站在数轴的不同地方,每一头牛由一个整数位置 X_i 以及整数品种编号 ID_...

【题解】母牛的故事

【题解】母牛的故事

【题目描述】有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?【输入描述】输入数据由多个测试实例组成,每个测试实例占一行...

【题解】选班委

【题目描述】小 T 和他的小伙伴们到 CZ 中学的创新实验班报到后的第一件事就是选班委,班主任 R 老师走上讲台宣布了选举办法,首先让全班 40 位同学依次上讲台做自我介绍,然后按照 职位一个一个依次...

【题解】计数2的N次方

【题目描述】任意给定一个正整数N(N≤100),计算2的n次方的值。【输入描述】输入一个正整数N。【输出描述】输出2的N次方的值。【样例输入】5【样例输出】32【参考答案】#include<io...

【题解】求车速问题

【题目描述】一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多...

2的幂次方表示

【题目描述】任何一个正整数都可以用2的幂次方表示。例如:137=27+23+20同时约定方次用括号来表示,即ab可表示为a(b)。由此可知,137可表示为:2(7)+2(3)+2(0)进一步:7=22...