【题解】冒泡排序计数
【题目描述】
考虑冒泡排序的一种实现。
bubble-sort (A[], n)
> round = 0
> while A is not sorted
> > round := round + 1
> > for i := 1 to n - 1
> > > if (A[i] > A[i + 1])
> > > > swap(A[i], A[i + 1])
求1 .. n的排列中,有多少个排列使得A被扫描了K遍,亦即算法结束时round == K。
答案模20100713输出。
【输入描述】
输入包含多组数据。每组数据为一行两个整数N,K。
数据规模和约定
T < = 10 ^ 5。
1 < = K < N < 10 ^ 6。
【输出描述】
【样例输入】
3 3 0 3 1 3 2
【样例输出】
1 3 2
2021 年青岛市程序设计竞赛试题(小学组)决赛
1.方程求解
【描述】
输入正整数 a,b,c。
求有多少组 x 和 y 满足 a*x+b*y=c 。x 和 y 都是非负整数。
【输入】
一行,包含三个正整数 a,b,c,两个整数之间用单个空格隔开。
【输出】
满足 a*x+b*y=c 的 x 和 y 的组数。
【输入样例】
2 3 18
【输出样例】
4
【样例说明】
有以下 4 组 x 和 y 满足 2*x+3*y=18:
x=0,y= 6
x=3,y= 4
x=6 ,y=2
x=9,y= 0
【数据范围】
50%的数据,1<=a,b,c<=1000;
100%的数据,1<=a,b,c<=100000。
【题解】山区建小学
【题解】踩方格
【题解】移动路线
【题解】队列问题
4.队列问题(lru.cpp)
【题目描述】
有一个大小为n的页面缓存队列,初始为空,当计算机访问页面时,若缓存队列没有该页面,则加入到缓存队列中,若队列已满,则将删除访问时间最远的页面。
有Q次询问,每次询问输入一个整型x,表示访问页面x。若缓存队列中有则输出yes,否则输出no。
【输入描述】
第一行,2个空格隔开正整数n,Q
以下Q行:每行是一个整型x。
【输出描述】
Q行,每行可能为yes或者no
【样例输入】
3 10 1 2 1 3 5 6 1 5 2 6
【样例输出】
no no yes no no no no yes no no
【样例解释】
【数据范围】
60%的数据:n<=1000,Q<=1000;
100%的数据:n<=100000,Q<=100000
【题解】计数2的N次方
【题目描述】
任意给定一个正整数N(N≤100),计算2的n次方的值。
【输入描述】
输入一个正整数N。
【输出描述】
输出2的N次方的值。
【样例输入】
5
【样例输出】
32
【题解】大整数减法
【题目描述】
求两个大的正整数相减的差。
【输入】
共2行,第1行是被减数a,第2行是减数b(a > b)。每个大整数不超过200位,不会有多余的前导零。
【输出】
一行,即所求的差。
【输入样例】
9999999999999999999999999999999999999
9999999999999
【输出样例】
9999999999999999999999990000000000000
【题解】大整数加法
【题目描述】
求两个不超过200位的非负整数的和。
【输入】
有两行,每行是一个不超过200位的非负整数,可能有多余的前导0。
【输出】
一行,即相加后的结果。结果里不能有多余的前导0,即如果结果是342,那么就不能输出为0342。
【输入样例】
22222222222222222222
33333333333333333333
【输出样例】
55555555555555555555