【比赛回顾】广工大2020级年ACM第一次月赛——K阶Mex数列(刷题生涯最坎坷的一道题)

这篇博客回顾了广工大2020级ACM月赛中的一道难题——K阶Mex数列,作者详细介绍了问题描述、输入输出格式,并分享了初次遇到问题时的困惑,包括递归解法的报错以及最终转向列举法的解决思路。通过分析,作者发现数组a的规律,得出解决方案,实现了AC代码。
摘要由CSDN通过智能技术生成

题目:

Description

定义a[l,r] = { a[l] , a[l+1] , a[l+2], … a[r-1] , a[r] }

定义mex函数:mex(l,r) = 不存在于a[l,r]内的最小非负整数

定义k阶Mex数列:Mex(n)=

n (n<k)

mex(n-k,n-1) (n>=k)

a[i]=Mex(i)

Input

第一行输入一个整数T,表示有T组数据。(1<=T<=100000)

每组数据输入两个整数n,k(0<=n<=1000000000,1<=k<=1000000000)

Output

输出k阶Mex(n)的结果

Sample Input

2

1 1

3 5

Sample Output

1

3


问题分析:

第一次看到这道题时,感觉逻辑很绕,像是闭环套娃一样,图解如下:
在这里插入图片描述

第一想到的是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值