반응형

코딩테스트 문제 58

[백준] 코딩은 체육과목 입니다 (25314번)

처음에는 문제를 이해 못했다가 알고 보니 long int는 고정이고 앞에 long을 붙일 때마다 4바이트 씩 늘어난다고 생각하는 학생의 로직대로 코드를 작성해야 한다는 것을 깨달았다! 고로 어렵지 않은 문제 답안 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scn = new Scanner(System.in); Long value = Long.parseLong(scn.nextLine()); String result = ""; for(int i = 0; i < value/4-1; i++) { result += "long "; } result += "long int"; System.ou..

[백준] 꼬마 정민 (11382번) / 일차원배열

꼬마 정민이가 나를 화나게 했다.... ^^ ㅋㅋㅋㅋ 자꾸 Numberformat Error 뜨길래 왜 parse를 못하고 난리! 라고 생각했으나 큰 수가 올거라는 생각은 못했다... ; 아무튼 해당 문제도 쉽(지 않)게 성공.. import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.nextLine(); String[] arr = str.split(" "); long sum = 0; for(int i = 0; i < arr.length; i++){ sum += Long.parseLong(arr[i]); } Sy..

[프로그래머스] 회문확인

문제 문자열 str과 정수 n이 주어진다. 문자열 str의 어떤 문자를 n번 이하로 제거하였을 경우, 회문이 되는지 그 여부(True, False)를 출력하시오. 회문 : 순서대로 읽어도 거꾸로 읽어도 똑같은 문장 abba, tenet, kayak 너무 어려웠다...... 어려움을 겪었던 부분 중에 하나는 메서드에서 재귀함수를 이용하는데 for문에서 빠져나가더라도 재귀함수를 멈추지는 못하는 현상이 일어나서 타입을 boolean으로 지정한 다음에 매서드를 반환할 때 true인지 false인지 확인하고 바로 멈추게 하고 싶은데 그것이 안돼서 value에 값이 한 번 true일 때 따로 false로 변경해서 지정하는 부분이 없게 했다. import java.util.Scanner; public class El..

[프로그래머스] 분수의 덧셈

그냥 풀었더니 실패...... 저 배열의 길이를 효율적으로 만들었어야 해서 수정했더니 통과했따 레벨 0인데 머리 왜 복잡하지......... class Solution { public int[] solution(int denum1, int num1, int denum2, int num2) { int[] answer = new int[2]; int denum = num1*num2; // 분모 8 int num = denum1*num2 + denum2*num1; // 분자 10 int[] denums = listOfCodomain(denum); int[] nums = listOfCodomain(num); int tmp = 1; for(int i = 1; i < denums.length; i++) { for(..

[백준] 과제 안 내신 분..? (5597번)

import java.util.Scanner; public class Main{ public static void main (String args[]) { Scanner scn = new Scanner(System.in); Integer[] arrInt = new Integer[30]; for(int i = 0; i < arrInt.length-2; i++) { int n = Integer.parseInt(scn.nextLine()); arrInt[n-1] = n; } for(int i = 0; i < arrInt.length; i++) { if(arrInt[i] == null) { System.out.println(i+1); } } } } 30개 배열을 만든 다음 1부터 입력하는 값들은 배열에 담는다 ..

Anagram 코딩테스트 문제

오랜만에 배열을 만났는데 기억이 가물 가물.......... 자바의 정석 다시 한 번 돌려야겠다 ArrayList list = Arrays.asList(strArr); 이렇게 String 배열을 ArrayList에 담고 싶을 때는 Arrays.asList()을 이용해서 넣어준다. import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; class Main { public static void main(String args[]) { //1. 값 입력 받기 Scanner scn = new Scanner(System.in); String wordTyped = scn.nextLine(); //2. 두 단어를 철자 별로 분류해서 ..

[백준] 평균은 넘겠지 (4344번) / 배열

한참을 풀었다............ 이중 배열이용해야 하는 줄 알고 복잡하게 풀고 있었는데 사람들이 그냥 배열 쓰길래 배열 쓰는 버전으로 더 간단하게 해 봤다 근데 이것보다 더 간단하게 하는 사람도 있는 것 같다... import java.util.Scanner; class Main { public static void main(String args[]) { Scanner scn = new Scanner(System.in); int arrNum = Integer.parseInt(scn.nextLine()); // 몇 줄 출력할 것인지 String rateArr[] = new String[arrNum]; // 정답이 담길 배열 for(int i = 0; i < arrNum; i++) { String[] s..

피보나치 수열, 재귀함수 이용해서 풀기

전에는 리스트 배열로 풀었던 것 같은데 재귀함수로 푸는 문제를 맞이하는 바람에 한 번 풀게 되었다. 재귀함수, 팩토리얼이 기억이 잘 안 났는데 아래 블로그의 연결된 링크에서 친절하게 가르쳐주어 독파! [JAVA] 재귀 기초 - 피보나치 (Fibonacci) 재귀에 대한 이해도가 전혀 없다면 http://marobiana.tistory.com/79 fibo(2-2) + fibo(2-1) else문의 첫번째 메소드인 fibo(2-2)가 호출 된다. 3) fibo(2-2)n은 0이므로 if문에서 0리턴하고 종료 fibo(2-2) + fibo(2-1) => 0 + fib marobiana.tistory.com import java.util.Scanner; class Main { int a = 10; public..

[백준] 킹, 퀸, 룩, 비숍, 나이트, 폰 (3003번) / 입출력과 사칙연산

새로운 문제가 추가 됐다 숫자를 문자로 입력 받아서 split 메서드로 String 배열에 넣은 다음에 꺼내고 나서 parseInt로 숫자로 변경한다음 미리 넣어둔 체스의 개수 배열에서 하나씩 빼서 String 문자 배열에다가 하나씩 넣는다 import java.util.*; class Main { public static void main(String args[]){ Scanner scn = new Scanner(System.in); String nums = scn.nextLine(); String arrs[] = nums.split(" "); int chess[] = {1, 1, 2, 2, 2, 8}; String answer = ""; for(int i = 0; i < arrs.length; i++..

반응형