如果 nmodm=0 ,则输出 m ,否则输出 nmodm 即可。
时间复杂度:O(1)
#include <bits/stdc++.h>
using namespace std;
int main() {
int T;
cin >> T;
while (T--) {
int m, n;
cin >> m >> n;
if (n % m == 0) {
cout << m << endl;
} else {
cout << n % m << endl;
}
}
return 0;
}
T = int(input())
while T > 0:
m, n = map(int, input().split())
if n % m == 0:
print(m)
else:
print(n % m)
T -= 1
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int T = scanner.nextInt();
while (T > 0) {
int m = scanner.nextInt();
int n = scanner.nextInt();
if (n % m == 0) {
System.out.println(m);
} else {
System.out.println(n % m);
}
T--;
}
}
}
小美有 n 个数,分别为 1,2,⋯,n ,但是有的时候 n 过大,所以小美想要用一种循环序号的方式来表达这些数,循环序号从 1 到 m 。
具体来说,将 1,2,⋯,m,m+1,m+2,⋯,2m,2m+1,⋯,n 转换为 1,2,⋯,m,1,2,⋯,m,1,2,⋯ 这种循环的形式。
现在,小美想要问你,第 n 个数的循环序号是多少?
第一行,一个整数 T(1≤T≤50000) ,表示 T 组数据
接下来 T 行,每行两个整数 m 和 n(1≤m,n≤109)
T 行,第 i 行表示第 i 组数据中第 n 个数的循环序号。
输入
3
2 1
3 4
5 10
输出
1
1
5