Skip to content

Commit a908ca3

Browse files
committed
Added day2
1 parent 8330b72 commit a908ca3

File tree

7 files changed

+381
-0
lines changed

7 files changed

+381
-0
lines changed

day2.class

2.03 KB
Binary file not shown.

day2.java

+60
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
import java.io.BufferedReader;
2+
import java.io.InputStreamReader;
3+
import java.util.*;
4+
5+
/**
6+
* Created by kylel95 on 12/3/18.
7+
*/
8+
public class day2 {
9+
public static void main(String [] args){
10+
Scanner in = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
11+
String s;
12+
int two = 0;
13+
int three = 0;
14+
while(in.hasNext()){
15+
s = in.next();
16+
two += twoCount(s);
17+
three += threeCount(s);
18+
19+
}
20+
System.out.println(two * three);
21+
}
22+
public static int twoCount(String s){
23+
char [] arr = s.toCharArray();
24+
HashMap<Character, Integer> map = new HashMap<>();
25+
Arrays.sort(arr);
26+
for(int i = 0; i < arr.length; i++){
27+
if(!map.containsKey(arr[i])){
28+
map.put(arr[i], 1);
29+
}
30+
else{
31+
map.put(arr[i], map.get(arr[i]) + 1);
32+
}
33+
}
34+
for(Character c: map.keySet()){
35+
if(map.get(c) == 2){
36+
return 1;
37+
}
38+
}
39+
return 0;
40+
}
41+
public static int threeCount(String s){
42+
char [] arr = s.toCharArray();
43+
HashMap<Character, Integer> map = new HashMap<>();
44+
Arrays.sort(arr);
45+
for(int i = 0; i < arr.length; i++){
46+
if(!map.containsKey(arr[i])){
47+
map.put(arr[i], 1);
48+
}
49+
else{
50+
map.put(arr[i], map.get(arr[i]) + 1);
51+
}
52+
}
53+
for(Character c: map.keySet()){
54+
if(map.get(c) == 3){
55+
return 1;
56+
}
57+
}
58+
return 0;
59+
}
60+
}

day2.txt

+250
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
uosnxmfkezbojfdgwvrtaqhluy
2+
iosnxmfkazbcopdgnvrtaqhluy
3+
ioanxmfkezbcjpdgwvrjaohluy
4+
uosnxmfkezbcjpjgwvrtaqhlut
5+
imsnxmfkezbcjpugwvataqhluy
6+
ioenxmfkezbcjpdgwvrraqhluz
7+
iosnxmfkezbcjpdgevitnqhluy
8+
iosnxmfkezcccpdgcvrtaqhluy
9+
loinxmfkezbcjpdgwvrtaqhluu
10+
iosnlmfkezbczndgwvrtaqhluy
11+
iosnxmfkezbcjpdgwvrifghluy
12+
iosnuhfkezbcjpugwvrtaqhluy
13+
iosnxmfkezbcwpdgwvrtaihlgy
14+
iosnxzfwuzbcjpdgwvrtaqhluy
15+
hosnxmfjizbcjpdgwvrtaqhluy
16+
iornxmfktzbcjpdgwvrtaqhluo
17+
nosnxmfkdzbcjpdgwvrtaqhlwy
18+
iosnxmfkezbcjpdgwvrtaktluq
19+
ioszxmlkezbcjvdgwvrtaqhluy
20+
ionnxmfkezbcfpdgwvbtaqhluy
21+
iosnxmfkezrcjedgwvrtaqhluq
22+
irsnxmfkezbcjpdqwvrtafhluy
23+
ioshxmzkezbccpdgwvrtaqhluy
24+
iosnxmfkezbrjpdgwvothqhluy
25+
bosnxmfkezbcbpdgwvrtnqhluy
26+
iosnomfkszbcjpcgwvrtaqhluy
27+
iosnxmflezbcjpdgwvrtaqmuuy
28+
iobnxmfkezbcjpdgxvrtaqfluy
29+
ioenxmfvezbcjgdgwvrtaqhluy
30+
iosnxmfkekbcjprgwvrtaqhlty
31+
iosnumfkezbcjpmgwvrtaqhlmy
32+
ionnxufkezbcjpdgwvrqaqhluy
33+
tosnxmfbezbcjpdghvrtaqhluy
34+
iosnxmfktzbcjpogwmrtaqhluy
35+
iosnamfkezbjjpdgtvrtaqhluy
36+
iosnemfkezmcjpdgwvrtaqhlry
37+
losnxmfkezbcjpdxwvrtaqsluy
38+
fomnxmekezbcjpdgwvrtaqhluy
39+
rosnxmfkezbcjzdcwvrtaqhluy
40+
iosngmrkezbcjpdgwvrtaqhduy
41+
iosnxmaaebbcjpdgwvrtaqhluy
42+
xosnxmfkezbcjpdgwvrmrqhluy
43+
iosnxmfkgzbujpdgwhrtaqhluy
44+
iosnxmekecbcjpmgwvrtaqhluy
45+
mesnxmfdezbcjpdgwvrtaqhluy
46+
insnxmbkezbcjpdgwvrtgqhluy
47+
iosyxmfkezbcjpdgwirtavhluy
48+
iosnxmfkezbcjpdgwlvtjqhluy
49+
iosnxmtkezbcjpdgwvjtaqhlut
50+
iosnxmfkezbsjpdhwvrtaqaluy
51+
iosnumfkezbcjpfgwvrtaqhlfy
52+
iosnxmekezbcdpxgwvrtaqhluy
53+
iosnfmfkezbcjpdgavctaqhluy
54+
iosnxmfkezvcjpdgfvrtamhluy
55+
iovnxmfkezbcjpdgzvrtaqhzuy
56+
iosnbmfkuzbcjpdgwvrtaqhlux
57+
iosnxmfkezbcjpdgwvftauhluc
58+
iosmbmfkezbcmpdgwvrtaqhluy
59+
ifsnxmfvezbcjpdgwvrwaqhluy
60+
iosnxmfkezfcjpdgwvrmaqhyuy
61+
iospxmfkezbcjpdkwvytaqhluy
62+
issnxmfkyzbcjpdgwyrtaqhluy
63+
iosnxmfkezbcjpdbwvrtjqhluz
64+
iosnxmfkwzbcjpdgfvrtajhluy
65+
iosnxmfkezbcjndgwvrnaqxluy
66+
iosnxmfkezbcjpdgwvltawwluy
67+
iosnxmfkezbcjpdguvrtwqhtuy
68+
iornxmfkezbcjpdgwertaihluy
69+
iofdxmokezbcjpdgwvrtaqhluy
70+
iosnxmfkezbcjpdgwgrtiqdluy
71+
iosnxmfkenbcjpdgwqrtiqhluy
72+
iosnxmfkezbcjpugwvotcqhluy
73+
iksnxmfkezbcjfdgqvrtaqhluy
74+
iasnxmfkezbcjpdgwvrtaqheuo
75+
iosnxmfkehbcipdgwvrtaqtluy
76+
iosnxifkezbajpdgwvrtaahluy
77+
iosnxmpkezbccpdguvrtaqhluy
78+
ioinxnfkezbcjpdgwvgtaqhluy
79+
gosnxmfkezbcjpdgwvrtvqkluy
80+
iolnxmfcezbcjpdgwvrtaqhlgy
81+
iosnxmfkezbcppdgwortjqhluy
82+
iesnxafkezbcjpdgwvrtayhluy
83+
iqsnxmfxazbcjpdgwvrtaqhluy
84+
cosnxmfkezbcjpdgwvrtkahluy
85+
ioenxmfkezbcjpdgwvrtzqyluy
86+
iosnxmhkwzbcjpdgwvrtabhluy
87+
iosnxmfkezbcjpdtwvrhaqiluy
88+
iisnxmfkezbcvpdwwvrtaqhluy
89+
iosnsmfkeobcjpdgfvrtaqhluy
90+
iwsnxmfkfzbcjpugwvrtaqhluy
91+
iosnxmflezbcjpdgwvrtaspluy
92+
gosnimfkezbcjpdgwvrtjqhluy
93+
iosnxmfkfibcjmdgwvrtaqhluy
94+
iosnxmfkpzbcjpdgwvitaqhwuy
95+
ionnxmfkerbcjpjgwvrtaqhluy
96+
iosnxmfkezecjgdgwvrtaqhljy
97+
iosnxufkezbcjpdguvltaqhluy
98+
vosnzmfkezbcjpdvwvrtaqhluy
99+
iolnxmfkecbcjpdgwvrtaqpluy
100+
iosnxmfkezbcjpdgwortaqhouw
101+
iomnxmfkezbckpdgwvrtaqhluu
102+
iopnymfkezbchpdgwvrtaqhluy
103+
iosnxmfkezhcjpdguvrtaqhnuy
104+
iosfxmfkezecjpdgyvrtaqhluy
105+
iopnxmfkgzbcjpdgwvbtaqhluy
106+
tosnxmffezbcjpdgwvttaqhluy
107+
iosnxmfkpabcjpdywvrtaqhluy
108+
iosrxmfkekbcjpdgwvrtaqrluy
109+
iosnxmokezbcjpdjwvrtaxhluy
110+
iolnxmfkezbccpdgwvetaqhluy
111+
iosnxmfketecjpdgwvrtaqnluy
112+
iosnxmfkxzbtjpdgwvroaqhluy
113+
ioinxmfkezbcjpdqwvrtjqhluy
114+
iosnxmfkqzbcjpdgwvrtaqzluz
115+
iosnxmfklzbcjpdgwwrtaqhluh
116+
iosnxmfkezbcjpdtwvrtmqhlpy
117+
iosnomfqezgcjpdgwvrtaqhluy
118+
iosnxmfkezbcjodgwvutaqhduy
119+
iosnxmfkezbcjppgwertaqhluu
120+
iosnxmfkezbcjqdggvrtaqhluw
121+
iosnxmvkezbcjpdgwvrtlqfluy
122+
icsnwmfkezbcjpdiwvrtaqhluy
123+
iosnxxbkezbhjpdgwvrtaqhluy
124+
ioknxmfkezacjpdgwvrtaqhliy
125+
iosgxmfkezbcjpdgevrtpqhluy
126+
iosnxmfkezbejpdgwlrtaqhldy
127+
iosnxyfkezbcjpdowvrtaqhlur
128+
iosnxmfkezbcjpnjwvrtaqhlvy
129+
iosnxglkezbcjpdvwvrtaqhluy
130+
iosnxmpkezbcjpdgwvrtxqhlub
131+
iosnxsfwezbcjpdgwmrtaqhluy
132+
aosnxmfkezbcjpdgwvrtaqhpwy
133+
iopnxmqkkzbcjpdgwvrtaqhluy
134+
iosnxmfkewbcfpdgwvrtaqmluy
135+
iosnxmfkekbcjpdgwvltawhluy
136+
iosnxmfmezbcjpdgwvitaqtluy
137+
iosnomfkezbcjpggwvrtaqhlly
138+
iobnkmfkezbcjpdywvrtaqhluy
139+
yosnxmfkezbcjydgwvrtarhluy
140+
iosnxifkezbckpdgyvrtaqhluy
141+
iornxmfkezbcjpduwvreaqhluy
142+
ivsfxmfjezbcjpdgwvrtaqhluy
143+
iosnxmfkezbcspdgwartaqhlui
144+
iosnxmfkezbcjpdgasstaqhluy
145+
iosnxmfkezbajpdgwvrtaqmlux
146+
gzsnxmfkezxcjpdgwvrtaqhluy
147+
iosnxmikczbcjpdgwvrtyqhluy
148+
iosnxmgkezbcjvdgwdrtaqhluy
149+
iosnxpfkezbcjpdgwvrbachluy
150+
igsnxmfkezbcjpdgwkrtaqtluy
151+
posnxmfkfzbcjpdgwvrpaqhluy
152+
iosnxmfkezbhjtdgwvrtaqhsuy
153+
iosfxmfkezbcjpdwwvrtaqvluy
154+
iosnxmfkehecjpdgwvrtaqoluy
155+
iasnxmfkezbckpdgfvrtaqhluy
156+
iosnxmfkezbwjpdggvrtaqhlmy
157+
iosnxmfkezbcjpdgwvrkaqhbun
158+
iosnxmikezbcjpdgwvrtaqhlnt
159+
iosnxmfiazbcjpdgwvetaqhluy
160+
iosnxmfkczbcjpfgwvrnaqhluy
161+
iosnxmfkezkcjpdgsvrqaqhluy
162+
iosnxmfkezbcspdgwvrtaqhxuc
163+
iosnxmfdezbcjpdgwzrteqhluy
164+
qosnxmrkezbcjpdgwvrtaqhlpy
165+
iosnxmfkpabcjpdywvrtawhluy
166+
ojsnxmfkezbcjpdgwvrtiqhluy
167+
iosrxmfkezbcjpdgdvrtaqhlmy
168+
iosnxmfkezbcnqdgwvrtayhluy
169+
ionnxmfkezbcjpdgwvrsaehluy
170+
iosnxmfkezbcjpdgwvrtmqhpuk
171+
ifsnxmfkezbcjpdpwvrtaqhluf
172+
insnxmfkezbcjpdgwrrtaqhmuy
173+
iosnxmfxezbcjpdjwvrfaqhluy
174+
iojnxmbkezccjpdgwvrtaqhluy
175+
iosnomlkezbcjpdgwvotaqhluy
176+
iosnamfkezbcjpdgwvrhqqhluy
177+
iksnxmfkezbbjrdgwvrtaqhluy
178+
iosnfmfkezbcjpdgwvrtaqhyay
179+
iosnxmzkezbcjpdayvrtaqhluy
180+
iosnxmfkezbcwpdgwbrtaqhlut
181+
iosnxmfkezccjpdgivrtaqhbuy
182+
iosuxmfkezbcjgdgwvrtaqhvuy
183+
ipsnxmfkezbcjpaiwvrtaqhluy
184+
iisnxmfkezbcjpdgpvrtaqqluy
185+
ihsnxmfkezbcspdgwvrtahhluy
186+
imsnxmfkezbcjpdgwvrtaqhkly
187+
josnxmfkezbpjpdgwvttaqhluy
188+
bosnxyfkezmcjpdgwvrtaqhluy
189+
iosnxmfkezbcjpkgwvrtkqhjuy
190+
iosnxmfkezbcjpdgwfrgaqfluy
191+
rosnxmfkqzbcjpdgwvxtaqhluy
192+
iosnxmfkezbcjpdgwlrwaqhluu
193+
yysnxmfkezbcjpdgwvrtaxhluy
194+
iosnxmpkezbcjldgwvrtaqoluy
195+
gosnxmfkezrcjpdgwvrtarhluy
196+
iosnxmfrezbcjrdmwvrtaqhluy
197+
iosnxmfkekbcjpdgpvrtaqhyuy
198+
iosbemfkezbcjpdgwdrtaqhluy
199+
iosnxmfkezucjpdgwvatamhluy
200+
ioanfmfkwzbcjpdgwvrtaqhluy
201+
iosnxphkezbcjpdgwvrtaqhlly
202+
ioynxmfkezbcjvbgwvrtaqhluy
203+
iosnnmfkwzbcjpdgwvrtaqbluy
204+
iosnxmfjezbcjpkgwtrtaqhluy
205+
iosexmfkezbcjpdgwvrtmshluy
206+
irsnxmwkezbcjpdgwvotaqhluy
207+
iosnxmfkezpcjpdgwvrlaqkluy
208+
iosnxmfkezbcjpwgwvroaqkluy
209+
iosnxmfkizbcjpdgwvrtaqxlay
210+
ioszxmfkezbcjpdgwertrqhluy
211+
iosnxmfkczscjpdgwvrtcqhluy
212+
iosnxmfkedbcjpdgwirtaqhliy
213+
iosgxmfpezbcjpdgwvvtaqhluy
214+
iownxmfiezbcjpdgwvrtajhluy
215+
iosnxmfkezbejudgwvrqaqhluy
216+
iomnpmfkezbcjpdgwvwtaqhluy
217+
ioshxmfkecbcjpdgwfrtaqhluy
218+
iosnxmfkezmcjpdgwzrtaqkluy
219+
iownxdfkezdcjpdgwvrtaqhluy
220+
iosnxmfjezbcjpdgwrotaqhluy
221+
roknxmfkezbcjpdgwxrtaqhluy
222+
iosnxmfkeibcjpdgovrtaqhloy
223+
ifsnxmfkelbcjpdgwvrcaqhluy
224+
iosnamfuezbcjpdwwvrtaqhluy
225+
rssnxmfkeebcjpdgwvrtaqhluy
226+
iosnomfkjzbcjpdgwvrtaqhlun
227+
iosnxmfuezbcjpdgwfjtaqhluy
228+
iosnxzfkezbcjpdewvrtaqhlfy
229+
iosnxmfkezbcjpdgwvrtzqhlgr
230+
iosixmfkezbcjpdgwvrkaqhlut
231+
issnxmfkezbdjpdpwvrtaqhluy
232+
iosnxmfrezbcjpdgwkrtaghluy
233+
iysnxmfkezbcjpdgwrrtmqhluy
234+
iosoxmfkezbcjpdgwjrtaqhlua
235+
eosnxmfkezvcjpdgwvztaqhluy
236+
iosmxmckezbcjpdgwvrtaqhlay
237+
iosnxmfkezbcjodgwvrtaqhlma
238+
josnxwftezbcjpdgwvrtaqhluy
239+
iosnxjfkepbcjpdgwvrtaqhlsy
240+
iosnnmfkezbcjpdgwvriaqhnuy
241+
iosnxofkezbcupdgwvrtayhluy
242+
iosnxmfkezbcjpddwvroaqhluz
243+
iosnomfkezbcapdhwvrtaqhluy
244+
iosixmfkezycjpdgwvrtaqhruy
245+
iosnwefkezbcjpdgwvrtaqcluy
246+
iosnxmfkvzbcbpdgwvrhaqhluy
247+
insnxmfkezbczpdgwvrtajhluy
248+
iosnxrfkelbcjpdgwvrtaqhluf
249+
iosnxmfkezbcjpdgwsrtaqhzud
250+
iosnxmfyvzbcjpdgwyrtaqhluy

day2output.txt

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
iosnxmfkpabcjpdywvrtahluy

day2pt2.class

2.06 KB
Binary file not shown.

day2pt2.java

+63
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
import java.io.BufferedReader;
2+
import java.io.InputStreamReader;
3+
import java.util.*;
4+
5+
/**
6+
* Created by kylel95 on 12/3/18.
7+
*
8+
*
9+
*
10+
* javac day2pt2.java
11+
java day2pt2 < day2.txt > day2output.txt
12+
cat day2output.txt
13+
*/
14+
public class day2pt2 {
15+
public static void main (String [] args){
16+
Scanner in = new Scanner(new BufferedReader(new InputStreamReader(System.in)));
17+
ArrayList<String> list = new ArrayList();
18+
String s;
19+
while(in.hasNext()){
20+
s = in.next();
21+
list.add(s);
22+
}
23+
String [] arr = new String[list.size()];
24+
arr = list.toArray(arr);
25+
Arrays.sort(arr);
26+
String s1;
27+
String s2;
28+
int curr = 0;
29+
HashSet<String> set = new HashSet<>();
30+
for(int i = 0; i < arr.length; i++){
31+
curr = i;
32+
s1 = arr[curr];
33+
for(int j = 0; j < arr.length; j++){
34+
s2 = arr[j];
35+
if(i != j && diff(s1, s2) == 1){
36+
set.add(union(s1, s2));
37+
}
38+
}
39+
}
40+
Iterator i = set.iterator();
41+
while(i.hasNext()){
42+
System.out.println(i.next());
43+
}
44+
}
45+
public static String union(String s1, String s2){
46+
StringBuilder sb = new StringBuilder();
47+
for(int i = 0; i < s1.length(); i++){
48+
if(s1.charAt(i) == s2.charAt(i)){
49+
sb.append(s1.charAt(i));
50+
}
51+
}
52+
return sb.toString();
53+
}
54+
public static int diff(String s1, String s2){
55+
int d = 0;
56+
for(int i = 0; i < s1.length(); i++){
57+
if(s1.charAt(i) != s2.charAt(i)) {
58+
d++;
59+
}
60+
}
61+
return d;
62+
}
63+
}

day2test1.txt

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
abcde
2+
fghij
3+
klmno
4+
pqrst
5+
fguij
6+
axcye
7+
wvxyz

0 commit comments

Comments
 (0)