
๋ฐฑ์ค 11382๋ฒ ๋ฌธ์ ํ์ด
๋ฌธ์ ๋ด์ฉ์
77 77 7777 ์ผ๋ก ์
๋ ฅ๊ฐ์ ๋ฐ๊ณ
77+77+7777 ๊ฒฐ๊ณผ์ธ 7931 ์ด ํ๋ฆฐํธ ๋๋๋ก ํ๋ ๊ฒ.
์ฐ์ ์์ ์
๋ ฅ1์ ๊ฐ์ ์
๋ ฅ๋ฐ๋๋ก ํด์ผํ๋ค.
Scanner๋ก ๊ฐ์ ๋ฐ์ ๊ฒฝ์ฐ ๊ณต๋ฐฑ ๋๋ ๊ฐํ(' ', '\t', '\r', '\n')์ ๊ฒฝ๊ณ๋ก ์ฝ์ด๋ฒ๋ฆฌ๋ฏ๋ก
๊ณต๋ฐฑ์ ํฌํจํ ์
๋ ฅ๊ฐ์ ๊ทธ๋๋ก ๋ฐ๊ธฐ ์ํด BufferedReader๋ฅผ ์ด์ฉํ๋ค.
BufferedReader ๋ฉ์๋
BufferedReader๋ ์ํฐ (\n)๊ฐ์ ๊ฒฝ๊ณ๋ก ์
๋ ฅ๊ฐ์ ๋ฐ๋๋ค.
์ฌ์ฉ์ ์ํด์๋ ์๋ import๊ฐ ํ์ํ๋ค.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
// ํ ๋ฒ์ import
import java.io.*;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException{
// BufferedReader๋ก ์
๋ ฅ๊ฐ์ ๋ฐ๋ ๊ธฐ๋ณธ ํํ
BufferedReader num = new BufferedReader(new InputStreamReader(System.in));
}
}
์
๋ ฅ๊ฐ์ ๋ฐ์ ํ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ํ์ฑํ๋๋ก ํด์ผํ๋ค.
์ฌ๊ธฐ์์๋ StringTokenizer ๋ฉ์๋,
StringTokenizer์ ํจ๊ป ์ฌ์ฉํ ์ ์๋ nextToken()๊ณผ HasMoreTokens()์ ํจ๊ป ์ฌ์ฉํ๋ค.
StringTokenizer ๋ฉ์๋
StringTokenizer ๋ฉ์๋๋ ์ฌ์ฉ์๊ฐ ์ง์ ํ๋ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋ ์ค๋ค.
๊ธฐ๋ณธ๊ฐ์ ๊ณต๋ฐฑ์ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋๊ณ
๋ ๋ฒ์งธ ์ธ์๋ก ์ผํ(,)๋ ์ (.) ๋ฑ์ ํน์ ๊ตฌ๋ถ์๋ฅผ ์ง์ ํ ๊ฒฝ์ฐ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋ ์ ์๋ค.
import java.util.StringTokenizer;
// ๋์ด์ฐ๊ธฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋๋ค
StringTokenizer st = new StringTokenizer(๋ฌธ์์ด);
// ํน์ ๊ตฌ๋ถ์๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋๋ค
StringTokenizer st = new StringTokenizer(๋ฌธ์์ด, ๊ตฌ๋ถ์);
nextToken() ๋ฉ์๋
StringTokenizer๋ก ์์ฑ๋ ๊ฐ์ฒด์์ ๋ถ๋ฆฌ๋ ๋ฌธ์์ด์ nextToken() ๋ฉ์๋๋ฅผ ์ด์ฉํด ํ์ธํ ์ ์๋ค.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
StringTokenizer st = new StringTokenizer("ํ ๋ผ ํธ๋์ด ๊ณฐ");
System.out.println(st.nextToken());// ํ ๋ผ ์ถ๋ ฅ
System.out.println(st.nextToken()); // ํธ๋์ด ์ถ๋ ฅ
System.out.println(st.nextToken()); // ๊ณฐ ์ถ๋ ฅ
}
}
hasMoreTokens() ๋ฉ์๋
hasMoreTokens() ๋ฉ์๋๋ StringTokenizer ๊ฐ์ฒด ์์ ๊ฐ์ ธ์ฌ ๊ฐ์ด ์์ ๊ฒฝ์ฐ true
๋์ด์ ๊ฐ์ ธ์ฌ ๊ฐ์ด ์์ ๊ฒฝ์ฐ false ๋ฅผ ๋ฐํํ๋ค.
๋ฉ์๋๋ฅผ ํ์ฉํ ์ต์ข
์์ฑ ์ฝ๋๋ ๋ค์๊ณผ ๊ฐ๋ค.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
// ์
๋ ฅ๊ฐ์ ๋ฐ๊ณ num ์ ๋์
BufferedReader num = new BufferedReader(new InputStreamReader(System.in));
// String ํ์
์ผ๋ก ์
๋ ฅ๊ฐ ์ ์ฅ
String str = num.readLine();
// ๋ณ๋์ ๊ตฌ๋ถ์ ์ง์ ์ด ์์ผ๋ฏ๋ก ๊ณต๋ฐฑ, ํญ์ ๊ธฐ๋ณธ ๊ตฌ๋ถ์๋ก ์ฌ์ฉ
StringTokenizer st = new StringTokenizer(str);
// totalNum ์ด๊น๊ฐ 0
int totalNum = 0;
// st.hasMoreTokens() : st์ ๋์ด์ ๊ฐ์ ธ์ฌ ๊ฐ์ด ์์ ๊ฒฝ์ฐ false ๋ฐํ
while(st.hasMoreTokens()){
// st์ ๊ณต๋ฐฑ๊ฐ์ ๊ธฐ์ค์ผ๋ก ๊ฐ์ ๊ฐ์ ธ์จ ํ str1์ ๋์
ํ๋ค.
String str1 = st.nextToken();
// str1์ int๋ก ํ๋ณํ ํ totalNum์ ๊ฐ๊ณผ ๋ํ ๊ฐ์ totalNum์ ์ฌ๋์
ํ๋ค
totalNum += Integer.parseInt(str1);
}
// totalNum ์ถ๋ ฅ
System.out.println(totalNum);
}
}
ํด๋น ์ฝ๋๋ก ์ ์ถํ์ ๋
๋ฐํ์ ์๋ฌ NumberFormat (java.lang.NumberFormatException) ๊ฐ ๋ฐ์.
NumberFormat ๋ฐํ์ ์๋ฌ๋ ๋ฌธ์์ด์ ์๋ก ๋ณํํ ๋ ๋ฐ์ํ๋ ์๋ฌ
๋ฐ์ํ๋ ๊ฒฝ์ฐ๋ ํฌ๊ฒ ๋๊ฐ์ง๋ก ํ์ธ๋๋ค.
1. ๋ฌธ์์ด์ intํ์ผ๋ก ๋ฐํํ ๋ ํ๋์ ์ ์๋ก ๋์ค์ง ์๋ ๊ฒฝ์ฐ
์ ) 1 2 -> ์ ์ ํ๋๋ก ๋ฐํํ ์ ์๋ค
2. ์๋ฃํ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋ ํด๋น ์๋ฃํ์ผ๋ก ๋ฒ์ด๋ ์ ์๋ ๊ฒฝ์ฐ
์๋ฌ์ ๋ํ ์์ธํ ๋ด์ฉ์ ์๋ ํ์ด์ง๋ฅผ ์ฐธ๊ณ
https://help.acmicpc.net/judge/rte/NumberFormat
๋ฐํ์ ์๋ฌ (NumberFormat)
NumberFormatjava.lang.NumberFormatException์ ๋ฌธ์์ด์ ์๋ก ๋ณํํ ๋ ๋ฐ์ํ๋ ์๋ฌ์ ๋๋ค.import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { BufferedReader bf = new BufferedRea
help.acmicpc.net
Interger๋ก ํ๋ณํ ํ ๋ Interger ๋ฒ์ ๋ณด๋ค ๊ฐ์ด ์ปค์ ธ ์๊ธฐ๋ ์ค๋ฅ๋ก ํ์ธ.
๋ฐ๋ผ์ int๊ฐ ์๋ long์ผ๋ก ํ๋ณํ์์ผ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader num = new BufferedReader(new InputStreamReader(System.in));
String str = num.readLine();
StringTokenizer st = new StringTokenizer(str);
long totalNum = 0;
while(st.hasMoreTokens()){
String str1 = st.nextToken();
totalNum += Long.parseLong(str1);
}
System.out.println(totalNum);
}
}
'๊ฐ๋ฐ ์ด์ผ๊ธฐ > JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Java - ์ต๋๊ฐ ์ต์๊ฐ ๊ฐ์ ธ์ค๊ธฐ Math.max() / Math.min() (0) | 2024.01.16 |
---|---|
Java - repeat ๋ฉ์๋ ์ด์ฉํด ๋ณ์ฐ๊ธฐ (2) | 2023.12.20 |
Java - ์์ธ ๋ฐ์ ์ฝ๋ (throw new IllegalArgumentException) (0) | 2023.07.04 |
Java - ์ดํด๋ฆฝ์ค ํ๊ฒฝ ์ค์ (0) | 2023.07.01 |
Java - ๋ฐ์ดํฐ ํ์ (data type) (0) | 2023.06.29 |