티스토리 뷰

문제 링크


코드


import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Scanner;

public class Main {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);
//총 몇개의 숫자를 입력 받을 것인지
int count = 0;
String input = "";
String a;
String b;
String[] box;
boolean x = true;
int result = 0;

HashMap<String,Integer> hashMap = new HashMap<>();
hashMap.put(sortString("zero"),0);
hashMap.put(sortString("one"),1);
hashMap.put(sortString("two"),2);
hashMap.put(sortString("three"),3);
hashMap.put(sortString("four"),4);
hashMap.put(sortString("five"),5);
hashMap.put(sortString("six"),6);
hashMap.put(sortString("seven"),7);
hashMap.put(sortString("eight"),8);
hashMap.put(sortString("nine"),9);
hashMap.put(sortString("ten"),10);

count = sc.nextInt();
sc.nextLine();
if(count > 0) {
for(int i = 0 ; i < count ; i ++) {

input = sc.nextLine();
box = input.split(" ");
a = sortString(box[0]); b = sortString(box[2]);
switch (box[1]) {
case "*" :
result = hashMap.get(a) * hashMap.get(b);
break;
case "-" :
result = hashMap.get(a) - hashMap.get(b);
break;
case "+" :
result = hashMap.get(a) + hashMap.get(b);
break;
}

Iterator<String> keys = hashMap.keySet().iterator();
while( keys.hasNext() ){
String key = keys.next();
if(hashMap.get(key) == result) {
if (key.equals(sortString(box[4]))) {
System.out.println("Yes"); x = false;
}
}
}

if(x) System.out.println("No"); x = true;

}
}
sc.close();
}

public static String sortString(String inputString)
{
// convert input string to char array
char tempArray[] = inputString.toCharArray();

// sort tempArray
Arrays.sort(tempArray);

// return new sorted string
return new String(tempArray);
}


}

이건 정말 똥 코드다. 다음에 수정하도록 하겠다.


'알고리즘 문제 풀이 ' 카테고리의 다른 글

달팽이 그리기  (0) 2018.09.17
자연수의 합 / Division  (0) 2018.09.17
단지번호 붙이기  (0) 2018.09.17
백준 스택 수열 1874번  (0) 2018.07.03
weird  (0) 2018.07.01
DRAWRECT - 좌표 계산 문제  (0) 2018.01.27
Endians - n진법 표기 관련 문제  (0) 2018.01.25
algospot 문제 잘 풀기 시작  (0) 2018.01.25
댓글