Submission #18874890
Source Code Expand
Copy
import java.io.*;import java.util.Arrays;import java.util.StringTokenizer;public class Main {// 注意不要用Arrays.sort()// 注意Math.pow可能导致精度问题// 注意int溢出问题static class Task {public void solve(int testNumber, InputReader in, PrintWriter out) {int n = in.nextInt();long[] arr = new long[n];for (int i = 0; i < n; i++) {arr[i] = in.nextInt();}sort(arr);long[] sufSumArr = new long[n];sufSumArr[n - 1] = arr[n - 1];
import java.io.*; import java.util.Arrays; import java.util.StringTokenizer; public class Main { // 注意不要用Arrays.sort() // 注意Math.pow可能导致精度问题 // 注意int溢出问题 static class Task { public void solve(int testNumber, InputReader in, PrintWriter out) { int n = in.nextInt(); long[] arr = new long[n]; for (int i = 0; i < n; i++) { arr[i] = in.nextInt(); } sort(arr); long[] sufSumArr = new long[n]; sufSumArr[n - 1] = arr[n - 1]; for (int i = n - 2; i >= 0; i--) { sufSumArr[i] = sufSumArr[i + 1] + arr[i]; } long sum = 0; for (int i = 0; i < n; i++) { sum += sufSumArr[i] - arr[i] * (n - i); } out.println(sum); } } private static void sort(double[] arr) { Double[] objArr = Arrays.stream(arr).boxed().toArray(Double[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[i]; } } private static void sortDesc(double[] arr) { Double[] objArr = Arrays.stream(arr).boxed().toArray(Double[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[arr.length - i - 1]; } } private static void sort(int[] arr) { Integer[] objArr = Arrays.stream(arr).boxed().toArray(Integer[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[i]; } } private static void sortDesc(int[] arr) { Integer[] objArr = Arrays.stream(arr).boxed().toArray(Integer[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[arr.length - i - 1]; } } private static void sort(long[] arr) { Long[] objArr = Arrays.stream(arr).boxed().toArray(Long[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[i]; } } private static void sortDesc(long[] arr) { Long[] objArr = Arrays.stream(arr).boxed().toArray(Long[]::new); Arrays.sort(objArr); for (int i = 0; i < arr.length; i++) { arr[i] = objArr[arr.length - i - 1]; } } private static void solve() { InputStream inputStream = System.in; OutputStream outputStream = System.out; InputReader in = new InputReader(inputStream); PrintWriter out = new PrintWriter(outputStream); Task task = new Task(); task.solve(1, in, out); out.close(); } public static void main(String[] args) { new Thread(null, () -> solve(), "1", 1 << 26).start(); } static class InputReader { public BufferedReader reader; public StringTokenizer tokenizer; public InputReader(InputStream stream) { reader = new BufferedReader(new InputStreamReader(stream), 32768); tokenizer = null; } public String next() { while (tokenizer == null || !tokenizer.hasMoreTokens()) { try { tokenizer = new StringTokenizer(reader.readLine()); } catch (IOException e) { throw new RuntimeException(e); } } return tokenizer.nextToken(); } public int nextInt() { return Integer.parseInt(next()); } public long nextLong() { return Long.parseLong(next()); } public double nextDouble() { return Double.parseDouble(next()); } } }
Submission Info
Submission Time | |
---|---|
Task | D - Sum of difference |
User | yuruiyin |
Language | Java (OpenJDK 11.0.6) |
Score | 400 |
Code Size | 3936 Byte |
Status | AC |
Exec Time | 605 ms |
Memory | 59692 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
All | hand_01.txt, max_01.txt, max_02.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, sample_01.txt, sample_02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
hand_01.txt | AC | 91 ms | 34536 KB |
max_01.txt | AC | 401 ms | 58028 KB |
max_02.txt | AC | 281 ms | 58492 KB |
random_01.txt | AC | 505 ms | 59040 KB |
random_02.txt | AC | 526 ms | 58292 KB |
random_03.txt | AC | 517 ms | 59672 KB |
random_04.txt | AC | 605 ms | 58336 KB |
random_05.txt | AC | 516 ms | 58388 KB |
random_06.txt | AC | 527 ms | 58284 KB |
random_07.txt | AC | 557 ms | 58484 KB |
random_08.txt | AC | 559 ms | 58232 KB |
random_09.txt | AC | 548 ms | 58484 KB |
random_10.txt | AC | 535 ms | 58184 KB |
random_11.txt | AC | 587 ms | 59276 KB |
random_12.txt | AC | 558 ms | 58064 KB |
random_13.txt | AC | 582 ms | 58592 KB |
random_14.txt | AC | 570 ms | 58560 KB |
random_15.txt | AC | 526 ms | 58400 KB |
random_16.txt | AC | 498 ms | 59408 KB |
random_17.txt | AC | 520 ms | 59692 KB |
random_18.txt | AC | 479 ms | 58284 KB |
random_19.txt | AC | 489 ms | 57788 KB |
random_20.txt | AC | 537 ms | 58204 KB |
sample_01.txt | AC | 75 ms | 34188 KB |
sample_02.txt | AC | 83 ms | 34440 KB |