자바의 입출력 방법에는 두 가지가 있습니다.
Scanner와 BufferedReader입니다.
자세한 설명이 필요하시면 해당 링크를 통해 확인하시기 바랍니다.
▼Scanner와 BufferedReader 개념 이해하기
[JAVA] Scanner vs BufferedReader : 입출력 처리 방법 비교하기
사용자가 어떤 값을 입력했을 때, 그에 맞는 출력을 하려면 어떻게 해야 할까요? 자바에서는 Scanner와 BufferedReader 두 가지 방법이 있습니다. 공부하시면서 Scanner 클래스를 흔히 사용하셨을 겁니다
eo-y.tistory.com
해당 개념을 이해하셨다면 백준 10926번 문제를 풀 수 있습니다.
▼ 백준 10926번 문제 풀기
https://www.acmicpc.net/problem/10926
10926번: ??!
준하는 사이트에 회원가입을 하다가 joonas라는 아이디가 이미 존재하는 것을 보고 놀랐다. 준하는 놀람을 ??!로 표현한다. 준하가 가입하려고 하는 사이트에 이미 존재하는 아이디가 주어졌을 때
www.acmicpc.net
백준 10926 : ??! 문제 풀기
Scanner와 BufferedReader 두 가지 버전으로 풀 수 있습니다.
1) Scanner
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in); //Scanner 생성
String a = sc.nextLine(); //String(문자열)입력이니 nextLine 생성
sc.close(); //Scanner 닫아주기
System.out.println(a + "??!"); //출력에 ??! 붙여주기
}
}
Scanner를 생성하여 입력할 수 있도록 합니다.
String문자열이니까 nextLine()을 입력합니다.
스캐너를 닫아준 후,
출력값에 ??!를 붙여줍니다.
다음은 버퍼드리더 방법입니다.
2) BufferedReader
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main1 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//BufferedReader 생성
StringTokenizer st = new StringTokenizer(br.readLine());
//readLine를 생성하기 위한 StringTokenizer생성
String b = st.nextToken() + "??!";
//입력받은 문자열에 ??! 붙여넣기
br.close();
System.out.println(b); //출력
}
}
BufferedReader를 생성합니다.
readLine 생성을 위한 StringTokenizer를 생성합니다.
문자열 b를 생성하여 입력받은 문자열에 ??!를 붙여 넣습니다.
문자열 b를 출력합니다.
어렵지 않은 내용이었으나, 문제 이해할 때 혼동이 올 수 있습니다.
입력한 데이터가 없는데 어떻게 중복인지 알 수 있는지,
지금까지 입출력 문제를 풀고 있는데 새로운 방법을 써야 되는 것인지 등..
난이도가 브론즈 5 인 만큼 어렵지 않게 그대로 생각하면 될 것 같습니다.
'알고리즘 > 백준 JAVA' 카테고리의 다른 글
[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 10998: AxB, 1008:A/B, 10869: 사칙연산 (0) | 2023.08.30 |
---|---|
[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1000: A+B, 1001:A-B, 11382: 꼬마 정민 / 정수형 타입 (0) | 2023.08.30 |
[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1001: A-B (0) | 2023.08.21 |
[JAVA] 백준 코딩테스트 1.입출력과 사칙연산 1000: A+B (0) | 2023.08.20 |
[JAVA] 백준 코딩테스트 런타임 에러 (main class Main) (0) | 2023.08.19 |