Skip to content

Commit d4fe52c

Browse files
改了下部分代码
1 parent 266b32b commit d4fe52c

File tree

10 files changed

+549
-38
lines changed

10 files changed

+549
-38
lines changed

huawei/src/main/java/code/Main.java

Lines changed: 61 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,67 @@
22

33
import java.io.*;
44

5+
import java.util.*;
6+
57
public class Main {
6-
public static void main(String[] args) {
7-
String a="adkjkdjg;ljgdflkjgdfljsiengkmfskjfklsjdfldsjfkdsjfiseejijdfsifjlsdjgkljsglskjgsldkjfdslkfjlskdjfsdlkjflsdjfkfet";
8-
char b='A';
9-
for (int i = 0; i < 30; i++) {
10-
System.out.println(b-i+" "+(b+i)+" "+(a.charAt(i)-'A'));
11-
// System.out.println(char(b));
8+
/**
9+
* 输入
10+
* 8
11+
* 123 124 125 121 119 122 126 123
12+
* 输出
13+
* 1 2 6 5 5 6 0 0
14+
*
15+
* @param args
16+
*/
17+
public static void main(String[] args) throws IOException {
18+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
19+
String str;
20+
while ((str = br.readLine()) != null) {
21+
int n = Integer.parseInt(str);
22+
String[] h = br.readLine().split(" ");
23+
int[] hs = new int[n + 1];
24+
int[] res = new int[n + 1];
25+
if (n < 1) {
26+
return;
27+
}
28+
if (h.length >= n) {
29+
for (int i = 0; i < h.length; i++) {
30+
hs[i] = Integer.parseInt(h[i]);
31+
res[i] = 0;
32+
}
33+
for (int i = 0; i < hs.length; i++) {
34+
for (int j = i + 1; j < hs.length; j++) {
35+
if (hs[j] > hs[i]) {
36+
res[i] = j;
37+
break;
38+
}
39+
}
40+
}
41+
for (int i = 0; i < res.length - 1; i++) {
42+
if (i == res.length - 2) {
43+
System.out.print(res[i]);
44+
} else {
45+
System.out.print(res[i] + " ");
46+
}
47+
}
48+
}
1249
}
1350
}
14-
}
51+
}
52+
/**
53+
* Scanner scanner = new Scanner(System.in);
54+
* int n=scanner.nextInt();
55+
* String hights = scanner.nextLine();
56+
* String hights ;
57+
* while (hights=scanner.nextLine()!=null){
58+
* <p>
59+
* }
60+
* String[] h = hights.split(" ");
61+
* int[] hs=new int[n + 1];
62+
* if (h.length >= n) {
63+
* for (int i = 0; i < h.length; i++) {
64+
* hs[i]=hs[i];
65+
* }
66+
* System.out.println(hs);
67+
* }
68+
*/

huawei/src/main/java/code/Main2.java

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
package main.java.code;
2+
3+
import java.io.BufferedReader;
4+
import java.io.IOException;
5+
import java.io.InputStreamReader;
6+
import java.util.ArrayList;
7+
import java.util.Collections;
8+
import java.util.List;
9+
import java.util.Scanner;
10+
11+
public class Main2 {
12+
/*
13+
1/N 2/Y 3/N 4/Y
14+
1 2
15+
3 4
16+
*/
17+
public static void main(String[] args) throws IOException {
18+
// BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
19+
Scanner scanner = new Scanner(System.in);
20+
String input = scanner.nextLine();
21+
// while ((input = br.readLine()) != null) {
22+
try {
23+
String[] s = input.split(" ");
24+
int[] a = new int[s.length];
25+
int[] b = new int[s.length];
26+
for (int i = 0; i < s.length; i++) {
27+
//0代表N,1代表Y
28+
a[i] = s[i].charAt(2) == 78 ? 0 : 1;
29+
b[i] = Integer.parseInt(s[i].split("/")[0]);
30+
}
31+
List<Integer> list1 = new ArrayList<>();
32+
List<Integer> list2 = new ArrayList<>();
33+
boolean c = true;
34+
for (int i = 0; i < b.length - 1; i++) {
35+
if (a[i + 1] == 1 && c) {
36+
list1.add(b[i]);
37+
list1.add(b[i + 1]);
38+
c = false;
39+
}
40+
}
41+
for (int i = 0; i < a.length; i++) {
42+
if (!list1.contains(b[i])) {
43+
list2.add(b[i]);
44+
}
45+
}
46+
Collections.sort(list1);
47+
Collections.sort(list2);
48+
for (int i = 0; i < list1.size(); i++) {
49+
if (i == list1.size() - 1) {
50+
System.out.print(list1.get(i));
51+
} else {
52+
System.out.print(list1.get(i) + " ");
53+
}
54+
}
55+
System.out.println();
56+
for (int i = 0; i < list2.size(); i++) {
57+
if (i == list2.size() - 1) {
58+
System.out.print(list2.get(i));
59+
} else {
60+
System.out.print(list2.get(i) + " ");
61+
}
62+
}
63+
} catch (Exception e) {
64+
System.out.println("ERROE");
65+
}
66+
// }
67+
}
68+
69+
}
70+
// while ((input = br.readLine()) != null) {
71+
// String[] s = input.split(" ");
72+
// int[] as = new int[s.length];
73+
// for (int i = 0; i < s.length; i++) {
74+
// //o代表n
75+
// as[i] = s[i].charAt(2) == 78 ? 0 : 1;
76+
// }
77+
// List<Integer> list1 = new ArrayList<>();
78+
// List<Integer> list2 = new ArrayList<>();
79+
// boolean b=true;
80+
// for (int i = 0; i < as.length-1; i++) {
81+
// if (as[i + 1] == 1&&b) {
82+
// list1.add(i+1);
83+
// list1.add(i + 2);
84+
// b=false;
85+
// }
86+
// }
87+
// for (int a : as) {
88+
// if (!list1.contains(a)) {
89+
// list2.add(a);
90+
// }
91+
// }
92+
// for (int i = 0; i < list1.size(); i++) {
93+
// if (i == list1.size() - 1) {
94+
// System.out.print(list1.get(i));
95+
// } else {
96+
// System.out.print(list1.get(i) + " ");
97+
// }
98+
// }
99+
// System.out.println();
100+
// for (int i = 0; i < list2.size(); i++) {
101+
// if (i == list2.size() - 1) {
102+
// System.out.print(list2.get(i));
103+
// } else {
104+
// System.out.print(list2.get(i) + " ");
105+
// }
106+
// }
107+
// }
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
package main.java.code;
2+
3+
import java.io.IOException;
4+
import java.util.ArrayList;
5+
import java.util.Collections;
6+
import java.util.List;
7+
import java.util.Scanner;
8+
9+
public class Main2_2 {
10+
/*
11+
1/N 2/Y 3/N 4/Y
12+
1/Y 2/Y 3/Y 4/Y
13+
1/N 2/N 3/N 4/N
14+
6/N 2/Y 3/N 4/Y 8/N
15+
6/N 2/Y 3/N 4/Y 8/N 10/N
16+
6/N 2/Y 3/N 4/Y 8/N 10/N 16/Y
17+
6/N 2/Y 3/N 4/Y 8/N 10/N 16/Y 1/N 18/N 22/N 23/N
18+
1/N 2/N 3/N 4/Y
19+
1 2
20+
3 4
21+
*/
22+
public static void main(String[] args) throws IOException {
23+
Scanner scanner = new Scanner(System.in);
24+
25+
String input = scanner.nextLine().trim();
26+
String[] s = input.split(" ");
27+
int[] a = new int[s.length];
28+
int[] b = new int[s.length];
29+
List<Integer> list = new ArrayList<>();
30+
for (int i = 0; i < s.length; i++) {
31+
try {
32+
//0代表N,1代表Y
33+
a[i] = s[i].split("/")[1].equals("N") ? 0 : 1;
34+
b[i] = Integer.parseInt(s[i].split("/")[0]);
35+
} catch (Exception e) {
36+
System.out.println("ERROR");
37+
}
38+
if (b[i] > 999 || b[i] <= 0 || list.contains(b[i])) {
39+
System.out.println("ERROR");
40+
return;
41+
}
42+
list.add(b[i]);
43+
}
44+
List<Integer> list1 = new ArrayList<>();
45+
List<Integer> list2 = new ArrayList<>();
46+
list1.add(b[0]);
47+
int flag = 1;
48+
for (int i = 1; i < b.length; i++) {
49+
if (flag == 1) {
50+
if (a[i] == 1) {
51+
list1.add(b[i]);
52+
flag = 1;
53+
} else {
54+
list2.add(b[i]);
55+
flag = 2;
56+
}
57+
} else {
58+
if (a[i] == 1) {
59+
list2.add(b[i]);
60+
} else {
61+
list1.add(b[i]);
62+
flag = 1;
63+
}
64+
}
65+
}
66+
Collections.sort(list1);
67+
Collections.sort(list2);
68+
if (list1.size() == 0) {
69+
list1 = list2;
70+
}
71+
for (int i = 0; i < list1.size(); i++) {
72+
if (i == list1.size() - 1) {
73+
System.out.print(list1.get(i));
74+
} else {
75+
System.out.print(list1.get(i) + " ");
76+
}
77+
}
78+
System.out.println();
79+
if (list2.size() > 0) {
80+
for (int i = 0; i < list2.size(); i++) {
81+
if (i == list2.size() - 1) {
82+
System.out.print(list2.get(i));
83+
} else {
84+
System.out.print(list2.get(i) + " ");
85+
}
86+
}
87+
} else {
88+
System.out.println();
89+
}
90+
}
91+
}
Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
package main.java.code;
2+
3+
import java.io.IOException;
4+
import java.util.ArrayList;
5+
import java.util.Collections;
6+
import java.util.List;
7+
import java.util.Scanner;
8+
9+
public class Main2_3 {
10+
/*
11+
1/N 2/Y 3/N 4/Y
12+
1/Y 2/Y 3/Y 4/Y
13+
1/N 2/N 3/N 4/N
14+
6/N 2/Y 3/N 4/Y 8/N
15+
6/N 2/Y 3/N 4/Y 8/N 10/N
16+
6/N 2/Y 3/N 4/Y 8/N 10/N 16/Y
17+
6/N 2/Y 3/N 4/Y 8/N 10/N 16/Y 1/N 18/N 22/N 23/N
18+
1/N 2/N 3/N 4/Y
19+
1 2
20+
3 4
21+
*/
22+
public static void main(String[] args) throws IOException {
23+
Scanner scanner = new Scanner(System.in);
24+
25+
String input = scanner.nextLine().trim();
26+
String[] s = input.split(" ");
27+
int[] a = new int[s.length];
28+
int[] b = new int[s.length];
29+
List<Integer> list = new ArrayList<>();
30+
for (int i = 0; i < s.length; i++) {
31+
try {
32+
//0代表N,1代表Y
33+
a[i] = s[i].split("/")[1].equals("N") ? 0 : 1;
34+
b[i] = Integer.parseInt(s[i].split("/")[0]);
35+
} catch (Exception e) {
36+
System.out.println("ERROR");
37+
}
38+
if (b[i] > 999 || b[i] <= 0 || list.contains(b[i])) {
39+
System.out.println("ERROR");
40+
return;
41+
}
42+
list.add(b[i]);
43+
}
44+
List<Integer> list1 = new ArrayList<>();
45+
List<Integer> list2 = new ArrayList<>();
46+
int flag = 1;
47+
for (int i = 0; i < b.length; i++) {
48+
if (flag == 1) {
49+
if (a[i] == 1) {
50+
list1.add(b[i]);
51+
flag = 1;
52+
} else {
53+
list2.add(b[i]);
54+
flag = 2;
55+
}
56+
} else {
57+
if (a[i] == 1) {
58+
list2.add(b[i]);
59+
} else {
60+
list1.add(b[i]);
61+
flag = 1;
62+
}
63+
}
64+
}
65+
Collections.sort(list1);
66+
Collections.sort(list2);
67+
if (list1.size() == 0) {
68+
list1 = list2;
69+
}
70+
for (int i = 0; i < list1.size(); i++) {
71+
if (i == list1.size() - 1) {
72+
System.out.print(list1.get(i));
73+
} else {
74+
System.out.print(list1.get(i) + " ");
75+
}
76+
}
77+
System.out.println();
78+
if (list2.size() > 0) {
79+
for (int i = 0; i < list2.size(); i++) {
80+
if (i == list2.size() - 1) {
81+
System.out.print(list2.get(i));
82+
} else {
83+
System.out.print(list2.get(i) + " ");
84+
}
85+
}
86+
} else {
87+
System.out.println();
88+
}
89+
}
90+
}

0 commit comments

Comments
 (0)