K-th Not Divisible by n

求第k个非n倍数算法
本文介绍了一个算法问题,即如何找到第k个不能被n整除的正整数。通过将数字分为长度为n的段,每段有n-1个数不被n整除,算法确定了k所在段并计算出具体数值。

You are given two positive integers nn and kk. Print the kk-th positive integer that is not divisible by nn.

For example, if n=3n=3, and k=7k=7, then all numbers that are not divisible by 33 are: 1,2,4,5,7,8,10,11,13…1,2,4,5,7,8,10,11,13…. The 77-th number among them is 1010.

Input
The first line contains an integer tt (1≤t≤10001≤t≤1000) — the number of test cases in the input. Next, tt test cases are given, one per line.

Each test case is two positive integers nn (2≤n≤1092≤n≤109) and kk (1≤k≤1091≤k≤109).

Output
For each test case print the kk-th positive integer that is not divisible by nn.

Example
Input
6
3 7
4 12
2 1000000000
7 97
1000000000 1000000000
2 1
Output
10
15
1999999999
113
1000000001
1

题意:就是让你求对于n这个数字,第k个不能整除n的数字是哪一个

解析:把数分为长度为n的若干段,那么每一段里面肯定有n-1个数字不能整除n,我们只要查一下第k个数字在那一段即可。

代码:

#include"stdio.h"
int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
	{
        long long m,n,k,s;
        scanf("%lld %lld",&n,&k);
        m=k/(n-1);
        s=k-m*(n-1);
        if(k==m*(n-1))
		s--;
        s=s+m*n;
        printf("%lld\n",s);
    }
    return 0;
}
翻译:# CF1444A Division ## 题目描述 Oleg's favorite subjects are History and Math, and his favorite branch of mathematics is division. To improve his division skills, Oleg came up with $ t $ pairs of integers $ p_i $ and $ q_i $ and for each pair decided to find the greatest integer $ x_i $ , such that: - $ p_i $ is divisible by $ x_i $ ; - $ x_i $ is not divisible by $ q_i $ . Oleg is really good at division and managed to find all the answers quickly, how about you? ## 输入格式 The first line contains an integer $ t $ ( $ 1 \le t \le 50 $ ) — the number of pairs. Each of the following $ t $ lines contains two integers $ p_i $ and $ q_i $ ( $ 1 \le p_i \le 10^{18} $ ; $ 2 \le q_i \le 10^{9} $ ) — the $ i $ -th pair of integers. ## 输出格式 Print $ t $ integers: the $ i $ -th integer is the largest $ x_i $ such that $ p_i $ is divisible by $ x_i $ , but $ x_i $ is not divisible by $ q_i $ . One can show that there is always at least one value of $ x_i $ satisfying the divisibility conditions for the given constraints. ## 输入输出样例 #1 ### 输入 #1 ``` 3 10 4 12 6 179 822 ``` ### 输出 #1 ``` 10 4 179 ``` ## 说明/提示 For the first pair, where $ p_1 = 10 $ and $ q_1 = 4 $ , the answer is $ x_1 = 10 $ , since it is the greatest divisor of $ 10 $ and $ 10 $ is not divisible by $ 4 $ . For the second pair, where $ p_2 = 12 $ and $ q_2 = 6 $ , note that - $ 12 $ is not a valid $ x_2 $ , since $ 12 $ is divisible by $ q_2 = 6 $ ; - $ 6 $ is not valid $ x_2 $ as well: $ 6 $ is also divisible by $ q_2 = 6 $ . The next available divisor of $ p_2 = 12 $ is $ 4 $ , which is the answer, since $ 4 $ is not divisible by $ 6 $ .
07-11
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值