Skip to content

Commit 3e0c9ad

Browse files
committed
update
1 parent d148704 commit 3e0c9ad

File tree

2 files changed

+82
-0
lines changed

2 files changed

+82
-0
lines changed
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
// Time: 624 ms
2+
// Memory: 900 KB
3+
// .
4+
// T:O(n), S:O(n)
5+
//
6+
import java.util.HashMap;
7+
import java.util.Scanner;
8+
9+
public class Codeforces_0296A_Yaroslav_and_Permutations {
10+
public static void main(String[] args) {
11+
Scanner sc = new Scanner(System.in);
12+
int n = sc.nextInt();
13+
HashMap<Integer, Integer> freq = new HashMap<>();
14+
for (int i = 0; i < n; i++) {
15+
int a = sc.nextInt();
16+
freq.merge(a, 1, Integer::sum);
17+
}
18+
int maxFreq = 0, half = n % 2 == 0 ? n / 2 : (n / 2 + 1);
19+
for (int key : freq.keySet()) {
20+
maxFreq = Math.max(maxFreq, freq.get(key));
21+
}
22+
23+
System.out.println(maxFreq <= half ? "YES" : "NO");
24+
}
25+
}
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
// Time: 560 ms
2+
// Memory: 1000 KB
3+
// Construct.
4+
// T:O(n), S:O(n)
5+
//
6+
import java.util.ArrayList;
7+
import java.util.List;
8+
import java.util.Scanner;
9+
10+
public class Codeforces_0300A_Array {
11+
public static void main(String[] args) {
12+
Scanner sc = new Scanner(System.in);
13+
int n = sc.nextInt(), firstPosi = 0;
14+
List<Integer> zero = new ArrayList<>(), nega = new ArrayList<>(), posi = new ArrayList<>();
15+
for (int i = 0; i < n; i++) {
16+
int a = sc.nextInt();
17+
if (a == 0) {
18+
zero.add(a);
19+
} else if (a > 0) {
20+
if (firstPosi == 0) {
21+
firstPosi = a;
22+
} else {
23+
zero.add(a);
24+
}
25+
} else {
26+
nega.add(a);
27+
}
28+
}
29+
if (firstPosi == 0) {
30+
posi.add(nega.get(0));
31+
posi.add(nega.get(1));
32+
nega = nega.subList(2, nega.size());
33+
} else {
34+
posi.add(firstPosi);
35+
}
36+
if (nega.size() % 2 == 0) {
37+
zero.add(nega.get(0));
38+
nega.remove(0);
39+
}
40+
41+
System.out.println(nega.size());
42+
System.out.println(print(nega));
43+
System.out.println(posi.size());
44+
System.out.println(print(posi));
45+
System.out.println(zero.size());
46+
System.out.println(print(zero));
47+
}
48+
49+
private static String print(List<Integer> arr) {
50+
StringBuilder ret = new StringBuilder();
51+
for (int i : arr) {
52+
ret.append(i);
53+
ret.append(" ");
54+
}
55+
return ret.toString().trim();
56+
}
57+
}

0 commit comments

Comments
 (0)