목록백준 (46)
먹었으면 뇌를 쓰자

일단 기쁘다!!! 왜냐면!!! 빡댁알이라서 1단계는 다 틀렸는데!!! 분기탱천하던 차에!!! 복습을 열심히 하고 2단계에 들어와 처음으로 내 머리로 한번에 풀었다!!! 진정하고 문제 정답 (God code, My code) 잘하는 사람들 입장에서는 이거 맞춘 게 뭐가 대수람, 싶겠지요 하지만 나한텐 인류가 달에 첫 발자국을 찍었을 때 그 느낌입니다 if()-else문은 생활코딩에서 써봤고 조건이 3개 이상이라 if()-elseif()-else문을 처음으로 써봤다

문제 문제가 너무 귀여운 거 아닌가? 정답(*역슬래시) 예제에 나온 그림을 그대로 복붙했는데 첫째 줄과 넷째 줄의 슬래시가 자동으로 하나 더 추가됐다. java에서 역슬래시(\,backslash)와 큰따옴표("",double quotation marks)는 바로 쓸 수 없다. 역슬래시와 큰따옴표를 출력하려면 이스케이프 시퀀스(escape sequance) 처리를 해줘야 한다. 방법은 간단하다. 둘 다 앞에 역슬래시를 붙여주면 끝!

문제 잘못된 코드 (런타임 에러 - NoSuchElement) 하... 어디서부터 말해야 할까 알고리즘 자체는 또 이상하지 않았는데ㅋㅋㅋ 게다가 구글링으로 get digit number 도 찾았는데... 우선 변수를 줄 단위로 각각 받기 때문에 공백 단위로 받는 StiringTokenizer를 쓸 필요가 없었다. 주입식 암기의 폐해를 온몸으로 보여주는 나 ^^ 세 번째 숫자는 잘 구했지만 두 번째 숫자를 구하는 수식부터 틀려버렸다. thirdnumber % 10 = 3 % 10 이 되는데 대체 무슨 생각으로 저딴 식을 쓴 거지 그리고 마지막에 저렇게 따로 더하지 않고 a*b로만 출력해도 된다. 정답

문제 엉망진창 코드 어제 공부한 BufferedReader를 사용해서 풀어보려고 했다. for문으로 변수를 계속 받으려고 생각했는데 다른 풀이를 보니 그냥 변수 A,B,C를 한 번에 선언하는 것 같다. for문의 오류에 빠지다보니, floorMod의 변수 선언에서 막혀버렸다. 그래도 새로 배운 클래스를 써먹으려 한 시도에 의의를 두자! 정답 1. BufferedReader 클래스를 사용해 입력값을 받는다. 2. 입력값 A,B,C를 차례로 선언하고 데이터 타입을 변환하는 Integer.parseInt 클래스를 만든다. 3. readLine()은 입력값을 한 줄 단위로 이해하므로, StringTokenizer 클래스로 공백 단위로 구분해준다. 4. System.out.println 클래스를 사용해 출력한다.

문제 엉망진창 코드 절댓값은 필요없는데... 왜 했지? 그렇지만 절댓값 메소드인 Math.abs() 를 알아냈다. 그리고 개수에서 입력값을 뺀다는 구상 자체는 틀리지 않았다. 정답 다양한 답안이 있던데 이게 가장 간단하고 이해하기 쉬웠다. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int chess[] = {1,1,2,2,2,8}; for(int i =0; i

문제 정답 (*Scanner - 사용자 입력 값을 받을 때 쓰는 클래스) 문제가 요상하게 복잡해보이지만 단순하게 접근하면 정답이다. 정수형 int 입력 값에서 태국과 한국의 연도 차이인 543을 빼서 출력하면 끝! import java.util.Scanner; public class Main { public static void main(String[]args) { Scanner year = new Scanner(System.in); int inputYear = year.nextInt(); System.out.println(inputYear-543); } }

문제 정답(*Scanner - 사용자 입력 값을 받을 때 쓰는 클래스) 처음에 문제를 잘못 이해해서 단순하게 'joonas'에 ??!를 붙이는 줄 알았다. 알고 보니 사칙연산과 마찬가지로 Scanner 클래스를 통해 입력 값을 받는 거였다. import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner id = new Scanner(System.in); String inputid = id.nextLine(); System.out.println(inputid + "??!"); } }

문제 정답 (*floorDiv, floorMod - 몫과 나머지를 반환하는 메소드) 검색을 통해서 floorDiv와 floorMod 메소드를 찾아내기는 했다. 이전 A/B 문제에서 소수점 아래를 표현하기 위해 정수형 int가 아닌 실수형 double을 썼던 것이 생각났다. floorDiv는 차치하고, floorMod를 나타내려면 double을 써야 한다고 판단했다. 그러자 아래와 같은 오류 메시지가 떴다. Main.java:12: error: no suitable method found for floorDiv(double,double) 다시 검색을 해보니 floorDiv 메소드는 int 변수를 받아서 (몫이니까 당연하게도) int 값을 반환한다. floorMod 메소드 또한 int로 나머지 '값'만 반환..