Submission #350132

# Submission time Handle Problem Language Result Execution time Memory
350132 2021-01-19T02:31:44 Z Celloboy A Huge Tower (CEOI10_tower) Java 11
25 / 100
731 ms 51780 KB
import java.io.*;
import java.util.*;
public class tower {
	static long MOD = (long)1e9+7;
	public static void main(String[] args) throws IOException{
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		int N = Integer.parseInt(st.nextToken()), K = Integer.parseInt(st.nextToken());
		int arr[] = new int[N]; st = new StringTokenizer(br.readLine());
		for(int i = 0; i < N; i++) {
			arr[i] = Integer.parseInt(st.nextToken());
		}
		int fact[] = new int[N+1]; fact[0]=1;
		for(int i = 1; i <= N; i++) {
			fact[i] = mult(fact[i-1],i);
		}
		Arrays.sort(arr);
		int right = 0;
		int ans = 1;
		for(int left = 0; left < N; ++left) {
			int s = 0;
			while(right< N && arr[left]+ K >= arr[right]) {++right; ++s;}
			if(s==0) continue;
			ans = mult(fact[right-left],ans);
			//System.out.println(right+" " + left);
		}
		System.out.println(ans);
	}/*
	private static int add(int a, int b) {
		// TODO Auto-generated method stub
		return (int) (a+b>=MOD ? a+b-MOD:a+b);
	}*/
	private static int mult(int a, int b) {
		// TODO Auto-generated method stub
		return (int)((long)(a*b)%MOD);
	}

}
# Verdict Execution time Memory Grader output
1 Correct 71 ms 8808 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 71 ms 8524 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 69 ms 8556 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Correct 71 ms 8428 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 72 ms 8552 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 72 ms 8528 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 71 ms 8324 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 70 ms 8528 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 77 ms 8556 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Correct 71 ms 8424 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 84 ms 8420 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 84 ms 8660 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 74 ms 8504 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 88 ms 8444 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 106 ms 9564 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 313 ms 17544 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 365 ms 19532 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 731 ms 24324 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 632 ms 35904 KB Output isn't correct
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 658 ms 51780 KB Output isn't correct
2 Halted 0 ms 0 KB -