<考试题> codevs 5251 WYW的数字金字塔

*PS:原来暴力优化优化是可以过的么qwq,ljoj 数据手动测并没有T。。。最后默默的吐槽一句,附上一个金字塔的图是因为怕我们没有见过吗。。。

go to the problem

题目描述 Description

wyw有一个数字n,他要用这个数字写出一个数字金字塔。

wyw用随机数生成器生成了一个小于n且大于1的正整数k。

wyw找来一张白纸,他在白纸的最低端写下了这个数字n。

wyw在n的上面紧挨着写下了一个正整数a1,a1满足不大于n/k,

wyw又在a1上面写下了一个正整数a2,满足a2不大于a1/k,

时间过了t…

wyw在ah-1的上面写下了一个正整数ah,满足ah不大于ah-1/k

wyw已经无法在ah的上方写出不大于ah/k的数字了

这时,wyw就已经写好了一个高度为h(这里应该为h+1)的数字金字塔

wyw可以按照这个规则写出好多符合条件的数字金字塔。

试问:wyw一共能够写出多少种数字金字塔?wyw能写出的所有的数字金字塔中最高的金字塔的高度是多少?

注意:由于答案可能较大,所以对每一组数据请输出答案对p取模后的值。

输入描述 Input Description

输入数据的第一行包含两个正整数T、p,表示有T组测试数据,p的意义如题目所述

后面跟着T组数据,每组数据仅一行,包含了一个正整数n和k,意义如题目所述

输出描述 Output Description

输出数据一共n行,每行两个整数,表示答案对p取模后的值

样例输入 Sample Input

2 2

6 2

20 3

样例说明:以20 3这组数据为例,wyw能写出的所有金字塔如下

这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值