반응형

백준 코드 47

[백준] 3003번 킹, 퀸, 룩, 비숍, 나이트, 폰 코드 (Java 자바)

예제 입력과 비교하여 부족하거나 많은 체스 피스 개수를 계산하는 문제이다.접근 방법)간단하게 Scanner와 System.out.print()에 대해 잘 알고 있다면 이번 심화문제는 손 쉽게 풀 수 있다.그리고 BufferedReader와 StringTokenizer를 이용하여 풀 수도 있다. ▷ 정수 Scanner 및 출력Scanner sc = new Scanner(System.in);int num = sc.nextInt();System.out.print(2-num+" "); ▷ 정수 BufferedReader 및 StringTokenizerBufferedReader br = new BufferedReader(new InputStreamReader(System.in));StringTokenizer st..

[백준] 25083번 새싹 코드 (Java 자바)

예제 출력과 같은 그림을 출력하는 문제이다.접근 방법)간단하게 System.out.println()을 이용하여 쉽게 풀 수 있다.하지만 몇 가지 주의해야 할 점이 있다.' 과 " 과 \는 그대로 출력되지 않기 때문이다. 이를 해결하기 위해 이 3가지를 출력하기 위해 앞에 \를 추가적으로 붙여야 한다. ▷ '  " \ 출력방법System.out.println("\'\"\\");출력결과'"\ 꼭 이 3가지 문자는 앞에 \를 붙여야 문자가 출력된다는 점을 잊지 말도록 하자.정답 코드 1)import java.util.Scanner;class Main{ public static void main(String[] args){ System.out.println(" ,r\'\"7");..

[백준] 11718번 그대로 출력하기 코드 (Java 자바)

예제 입력 값을 그대로 똑같이 출력하는 문제이다.접근 방법)Scanner의 nextLine()를 이용하면 한 줄씩 입력을 받을 수 있다. 이것을 이용하여 한 줄씩 받고 출력하여 다음 줄에 더 이상 입력값이 없을 때까지 반복해야 한다.while문을 이용하여 한 줄 입력값을 받고 출력하는 실행문을 만들 수 있다. 하지만 조건문을 어떻게 작성해야 하는가..Scanner의 인스턴스.hasNext()를 이용하여 다음 입력 값 여부에 따라 true 또는 false 값을 갖게 된다.아래 예제를 보면서 참고해 보자. ▷ 다음 입력 값이 없을 때까지 Scanner sc = new Scanner(System.in);while(sc.hasNext()){ String str = sc.nextLine(); Syste..

[백준] 5622번 다이얼 풀이 코드 (Java 자바)

다이얼을 걸기 위한 최소 시간을 구하는 문제이다.접근 방법)각 대문자 알파벳에 해당하는 다이얼 번호가 있다. 조건문을 이용하여 알파벳을 입력받았을 때 그에 해당하는 다이얼 번호를 할당하고, 할당받은 다이얼 번호의 총합을 구하면 된다.먼저 입력값을 받은 후 알파벳을 하나씩 처리하기 위해 입력 값 길이 만큼 반복하는 for문과 charAt()을 이용하여 알파벳을 하나씩 뽑아낼 수 있다. 그 후 조건문을 생성하여 다이얼 번호 구한다. ▷ 알파벳 하나씩 조건문 넣기String str = "ABA"; int sum = 0; // 총 합 구하기(출력할 값) for(int i = 0; i = 'A' && (int)ch = 'D' && (int)ch  정답 코드 1)import java.uti..

[백준] 2908번 상수 풀이 코드 (Java 자바)

문자열을 뒤집고 두 수의 크기 비교하는 문제이다.접근 방법)우선 문자열을 뒤집기 위해서 몇 가지 방법이 존재한다. for문을 이용하여 문자를 하나씩 위치를 거꾸로 배치하는 방법과 StringBuilder 클래스를 이용하는 방법이다.for문을 이용하여 문자열을 뒤집는 방법도 괜찮지만 StringBuilder 클래스의 주요 메소드를 이용하면 문제를 굉장히 쉽게 풀어낼 수 있다. 그렇기 때문에 StringBuilder 클래스와 주요 메소드를 알지 못했다면 이번 기회에 알아놓자. ▷ StringBuilder 클래스와 주요 메소드를 이용한 문자열 뒤집기 StringBuilder는 문자열에서 문자를 삽입, 붙이기, 제거, 뒤집기등 여러 가지 기능을 할 수 있는 클래스이다.우리가 사용할 메소드는 reverse()와 ..

[백준] 1152번 단어의 개수 풀이 코드 (Java 자바)

띄어쓰기로 구분되어 있는 단어의 개수를 출력하는 문제이다.접근 방법)StringTokenizer클래스를 이용하면 문자열 분리와 관련된 코드를 쉽게 작성할 수 있다.이 클래스를 이용하여 띄어쓰기를 기준으로 문자열을 분리하고 countTokens() 함수를 이용해 분리된 토큰수를 출력하면 된다.  ▷ StringTokenizer클래스를 이용한 문자열 분리 StringTokenizer는 문자열을 구분자를 사용하여 분리할 때 자주 사용된다.(스페이스, 공백, 콤마를 기준으로 문자열 분리에 사용) String Tokenizer에 관한 자세한 내용은 아래 페이지를 통해 알아보자. [ Java 자바 ] StringTokenizer 클래스를 이용한 문자열 분리!StringTokenizer클래스는 많이 들어본 클래스 이..

[백준] 2675번 문자열 반복 풀이 코드 (Java 자바)

두 번째 줄부터 왼쪽 정수 숫자만큼 오른쪽 문자열의 각 문자를 반복하여 출력하는 문제이다.상당히 쉬운문제에 속하여 for문을 조금만 이용한다면 쉽게 풀 수 있다.접근 방법)첫째 줄에 테스트 케이스의 개수를 입력 받아, 그 수 만큼 반복하도록 for문을 생성한다.그 다음 둘째 줄 부터 정수(R)와 문자열(S)을 각 각 입력 받고 문자열 길이 만큼 반복하는 for문을 생성한다.마지막으로 그 for문안에서 문자를 하나씩 R만큼 반복하여 출력하는 코드를 작성하면 올바른 출력 결과가 만들어진다.  ▷ 문자열 각 문자마다 반복 출력하기 총 for문을 3번 이용하여 각 문자를 반복 출력할 수 있다.s.charAt()을 사용하여 문자를 출력하고 2번째 for문 밖에서 System.out.println()을 입력하여 다..

[백준] 10809번 알파벳 찾기 풀이 코드 (Java 자바)

a~z 기본 출력값이 -1인 상황에서 예제 입력한 문자열의 각 알파벳이 별로 처음 등장한 위치를 -1에서 바꿔주는 문제이다.접근 방법)처음으로 26 크기를 가진 배열을 생성한 후 모든 배열 값을 -1로 설정한다.그리고 입력 값을 받아와 입력 값 길이만큼 반복하는 for문을 만든 다음 char를 이용하여 알파벳을 하나씩 뽑는다.하나씩 뽑은 알파벳이 26크기를 가진 배열에서 몇 번째 배열에 위치하는지 알기 위해서 아스키코드를 사용한다.그리고 해당 배열에 위치한 알파벳이 입력값에서 처음 등장한 위치가 얼마인지 바꿔준다.  ▷ 입력값에서 알파벳 처음 등장한 위치 찾기 str.charAt(i)을 그대로 사용하여 출력하게 되면 아스키코드 값이 출력된다.a의 아스키코드 값은 97이므로 (int)ch - 97로 코드를..

[백준] 11720번 숫자의 합 풀이 코드 (Java 자바)

첫 번째 줄의 숫자 개수만큼 두 번째 줄에 일의 단위 숫자들을 나열하여 두 번째 줄의 수 합을 구하는 문제이다.접근 방법)첫번째 줄의 입력 값만큼 for문을 반복하여 두 번째 줄의 입력값을 하나씩 누적해서 더하면 된다.for문 안에서 두번째 줄 입력값을 하나씩 뽑아내기 위해서는 아래와 같이 코드를 작성하여 풀이하면 된다.  ▷ char -> Int 형으로 변환하기str.charAt(i)을 그대로 사용하여 출력하게 되면 아스키코드 값이 출력된다.그래서 정수 0의 아스키 코드아스키코드 값이 48, 1의 아스키코드 값이 49를 가지기 때문에 str.charAt(i)에 -48을 해주어 우리가 출력하고자 하는 정수값을 만들어주어야 한다. for(int i = 0; i   정답 코드 1)import java.ut..

[백준] 11654번 아스키 코드 풀이 코드 (Java 자바)

아스키(ASCII) 코드는 컴퓨터에서 문자를 표현하기 위한 표준 코드이다.각 문자와 숫자, 기호에 고유한 7비트 정수 값을 할당하여 컴퓨터가 이를 이해하고 처리할 수 있게 한다..예를 들어, 대문자 'A'는 아스키코드 값 65, 소문자 'a'는 97, 숫자 '0'은 48에 해당한다. 문자를 입력받으면 그에 해당하는 아스키 코드 값을 구해보도록 하자.접근 방법)아스키 코드를 구하기 위해서는 char형 문자 하나를 입력받아 그것을 int형으로 바꿔주면 된다.  ▷ 아스키 코드 변환 방법char형의 문자를 int형으로 변환시켜 출력하면 된다.char character = 'A';int asciiValue = (int) character; // 'A'의 아스키 코드 값을 얻기 위해 int로 캐스팅System.o..

반응형