およびSの正の整数シーケンス
3972 ワード
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
while (true) {
int N = scan.nextInt();
int M = scan.nextInt();
if (N == 0 && M == 0) {
break;
}
int small = 1, big = 1;
int curSum = small;
while (big <= M) {
if (curSum == M) {
System.out.println("[" + small + "," + big + "]");
}
while (curSum > M) {
curSum -= small;
small++;
if (curSum == M) {
System.out.println("[" + small + "," + big + "]");
}
}
big++;
curSum += big;
}
}
}
}
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
while (true) {
int N = scan.nextInt();
int M = scan.nextInt();
if (N == 0 && M == 0) {
break;
}
int n = (int)Math.sqrt(M*2); // n
while (n > 0) {
int a0 = (M-(n-1)*n/2)/n;
if (a0*n + (n-1)*n/2 == M) { // 0 n-1, 1 n
System.out.println("[" + a0 + "," + (a0+n-1) + "]");
}
n--;
}
System.out.println();
}
scan.close();
}
}