阅小文得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。特别想知道是否能被3整除。 阅小文现在希望你能帮他计算一下从数列的第y个到第w个(包含端点)有多少个数可以被3整除?
阅小文得到一个神奇的数列: 1, 12, 123,...12345678910,1234567891011...。特别想知道是否能被3整除。 阅小文现在希望你能帮他计算一下从数列的第y个到第w个(包含端点)有多少个数可以被3整除?
输入包括两个整数y和w(1 <= y <= w <= 1e9), 表示要求解的区间两端。
输出一个整数, 表示区间内能被3整除的数字的个数。
2 5
3
12, 123, 1234, 12345... 其中12, 123, 12345能被3整除。
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] params = br.readLine().split(" ");
int l = Integer.parseInt(params[0]), r = Integer.parseInt(params[params.length - 1]);
int count = 0;
for(int num = l; num <= r; num++){
long sum = ((1L + num) * num) >> 1;
if(sum % 3 == 0) count++;
}
System.out.println(count);
}
}