๋ฐฑ์ค ๋จ๊ณ๋ณ๋ก ํ์ด๋ณด๊ธฐ 5๋จ๊ณ "๋ฌธ์์ด"
(27866 ๋ฌธ์์ ๋ฌธ์์ด, 2743 ๋จ์ด ๊ธธ์ด ์ฌ๊ธฐ, 9086 ๋ฌธ์์ด, 11654 ์์คํค ์ฝ๋, 11720 ์ซ์์ ํฉ, 10809 ์ํ๋ฒณ ์ฐพ๊ธฐ, 2675 ๋ฌธ์์ด ๋ฐ๋ณต, 1152 ๋จ์ด์ ๊ฐ์, 2908 ์์, 5622 ๋ค์ด์ผ, 11718 ๊ทธ๋๋ก ์ถ๋ ฅํ๊ธฐ)
๊ทธ๋ ๊ฒ ์ด๋ ค์ด ๋ฌธ์ ๋ ์์๋ค!
๊ทธ๋์ ๋ชจ๋ ๋ฌธ์ ๋ค์ ํ๋ฒ์ ํฌ์คํ ํ๋ค.
27866 ๋ฌธ์์ ๋ฌธ์์ด (104ms)
๋ฌธ์
๋จ์ด S์ ์ ์ i๊ฐ ์ฃผ์ด์ก์ ๋, S์ i๋ฒ์งธ ๊ธ์๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์์ด ์๋ฌธ์์ ๋๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๋จ์ด์ ๊ธธ์ด๋ ์ต๋ 1000์ด๋ค.
๋์งธ ์ค์ ์ ์ i๊ฐ ์ฃผ์ด์ง๋ค.
Sprout
3
์ถ๋ ฅ
โ i๋ฒ์งธ ๊ธ์๋ฅผ ์ถ๋ ฅํ๋ค.
์r
charAt์ ์ฌ์ฉํ๋ฉด ๊ฐ๋จํ๋ค.
charAt : ~๋ฒ์งธ ๋ฌธ์ ๋ฐํString str1 = "๋์ด์ง ๊ฑด๋ฌผ ์ ๋ถ๋น๋ค์ ์ ํธ์์์ ๊ฐ๋ ๋ด๊ฒจ์์ด";char ch1 = str1.charAt(0); // + ๋ง์ง๋ง ๋ฌธ์ ์ป๊ธฐ char ch2 = str1.charAt(str1.length() - 1); |
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String S = br.readLine();
int i = Integer.parseInt(br.readLine());
System.out.println(S.charAt(i-1));
}
}
2743 ๋จ์ด ๊ธธ์ด ์ฌ๊ธฐ (104ms)
๋ฌธ์
์ํ๋ฒณ์ผ๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด๋ฅผ ์ ๋ ฅ๋ฐ์, ๊ทธ ๊ธธ์ด๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์์ด ์๋ฌธ์์ ๋๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด๊ฐ ์ฃผ์ด์ง๋ค. ๋จ์ด์ ๊ธธ์ด๋ ์ต๋ 100์ด๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ๋จ์ด์ ๊ธธ์ด๋ฅผ ์ถ๋ ฅํ๋ค.
length๋ก ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ์ถ๋ ฅํ๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String S = br.readLine();
System.out.println(S.length());
}
}
9086 ๋ฌธ์์ด (120ms)
๋ฌธ์
๋ฌธ์์ด์ ์ ๋ ฅ์ผ๋ก ์ฃผ๋ฉด ๋ฌธ์์ด์ ์ฒซ ๊ธ์์ ๋ง์ง๋ง ๊ธ์๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ ๋ ฅ์ ์ฒซ ์ค์๋ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T(1 ≤ T ≤ 10)๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ํ ์ค์ ํ๋์ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ๋ฌธ์์ด์ ์ํ๋ฒณ A~Z ๋๋ฌธ์๋ก ์ด๋ฃจ์ด์ง๋ฉฐ ์ํ๋ฒณ ์ฌ์ด์ ๊ณต๋ฐฑ์ ์์ผ๋ฉฐ ๋ฌธ์์ด์ ๊ธธ์ด๋ 1000๋ณด๋ค ์๋ค.
์ถ๋ ฅ
๊ฐ ํ ์คํธ ์ผ์ด์ค์ ๋ํด์ ์ฃผ์ด์ง ๋ฌธ์์ด์ ์ฒซ ๊ธ์์ ๋ง์ง๋ง ๊ธ์๋ฅผ ์ฐ์ํ์ฌ ์ถ๋ ฅํ๋ค.
charAt ์ฌ์ฉํ์๋ค.
์ถ๋ ฅ์ ""์ ์ถ๊ฐํ๋ฉด ์๋ ๋ฌธ์์ด๋ก ํ๋ณํ๋๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
for (int i = 0; i < T; i++) {
String s = br.readLine();
System.out.println(s.charAt(0) +""+ s.charAt(s.length()-1));
}
}
}
11654 ์์คํค ์ฝ๋ (104ms)
๋๋ฌด ์ฌ์์ ๋ฌธ์ ์๋ต.
์ํ๋ฒณ ์๋ฌธ์, ๋๋ฌธ์, ์ซ์ 0-9์ค ํ๋๊ฐ ์ฃผ์ด์ก์ ๋, ์ฃผ์ด์ง ๊ธ์์ ์์คํค ์ฝ๋๊ฐ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์๋ ํ๋ณํ์ ํตํด ์กฐ๊ธ ํน์ดํ๊ฒ ํ์ด๋ณด์๋ค.
๋ค์ 0์ ๋ํด์ int๋ก ๋ง๋ค์ด ์ถ๋ ฅ. ์ด๋ฌ๋ฉด ์์คํค์ฝ๋๊ฐ ์ถ๋ ฅ๋๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String T = br.readLine();
System.out.println(T.charAt(0)+0);
}
}
11720 ์ซ์์ ํฉ (100ms)
๋ฌธ์
N๊ฐ์ ์ซ์๊ฐ ๊ณต๋ฐฑ ์์ด ์ฐ์ฌ์๋ค. ์ด ์ซ์๋ฅผ ๋ชจ๋ ํฉํด์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์ซ์์ ๊ฐ์ N (1 ≤ N ≤ 100)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์ ์ซ์ N๊ฐ๊ฐ ๊ณต๋ฐฑ์์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง ์ซ์ N๊ฐ์ ํฉ์ ์ถ๋ ฅํ๋ค.
charAt์ ์ฌ์ฉํ๋ค.
๊ทธ๋ฆฌ๊ณ ์์คํค์ฝ๋์ ํน์ง์ ์๊ฐํ๋ฉด ๋๋ค.
๊ทธ๋ฅ ์์คํค์ฝ๋ - 48 (๋นผ๊ธฐ 48)ํด์ฃผ๋ฉด ๊ทธ๊ฒ ๊ทธ ์์ ๊ฐ์ด๋ฏ๋ก
์ด๋ ๊ฒ ํด์ ๋ํด๋ถ๋ ๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
String num = br.readLine();
int sum = 0;
for (int i = 0; i < N; i++) {
sum += num.charAt(i) - 48;
}
System.out.println(sum);
}
}
for (int i = 0; i < N; i++) {
sum += num.charAt(i) - '0';
}
48์ ๋นผ๋ ๋ฐฉ๋ฒ ๋ง๊ณ 0์ ๋นผ๋ ๋ฐฉ๋ฒ๋ ์๋ค.
+ ๋๋ฒ์งธ ๋ฐฉ๋ฒ (104ms)
๊ทธ๋ฅ ํ๋ ํ๋ ๋ฐ๋ณต๋ฌธ์ผ๋ก ์ชผ๊ฐ๊ณ char → string → int๋ก ํ๋ณํํ์ฌ ๋ํด์ฃผ์๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
String num = br.readLine();
int sum = 0;
for (int i = 0; i < N; i++) {
// Integer.parseInt๋ String type์ ์ธ์๋ก ๋ฐ์์ผํจ.
sum += Integer.parseInt(String.valueOf(num.charAt(i)));
}
System.out.println(sum);
}
}
10809 ์ํ๋ฒณ ์ฐพ๊ธฐ(124ms)
- indexOf()
๋ฌธ์
์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ๊ฐ์ ์ํ๋ฒณ์ ๋ํด์, ๋จ์ด์ ํฌํจ๋์ด ์๋ ๊ฒฝ์ฐ์๋ ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ, ํฌํจ๋์ด ์์ง ์์ ๊ฒฝ์ฐ์๋ -1์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๋จ์ด์ ๊ธธ์ด๋ 100์ ๋์ง ์์ผ๋ฉฐ, ์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ค.
์ถ๋ ฅ
๊ฐ๊ฐ์ ์ํ๋ฒณ์ ๋ํด์, a๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, b๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, ... z๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค.
๋ง์ฝ, ์ด๋ค ์ํ๋ฒณ์ด ๋จ์ด์ ํฌํจ๋์ด ์์ง ์๋ค๋ฉด -1์ ์ถ๋ ฅํ๋ค. ๋จ์ด์ ์ฒซ ๋ฒ์งธ ๊ธ์๋ 0๋ฒ์งธ ์์น์ด๊ณ , ๋ ๋ฒ์งธ ๊ธ์๋ 1๋ฒ์งธ ์์น์ด๋ค.
์์คํค์ฝ๋์ ํน์ฑ, ๊ทธ๋ฆฌ๊ณ indexOf ๋ฅผ ์ด์ฉํ ๋ฐฉ๋ฒ์ด๋ค.
indexOf/lastIndexOf : ์ผ์นํ๋ ์ฒซ/๋ง์ง๋ง ๋ฌธ์์ด์ ์์น=> ์์์๋ถํฐ ์นด์ดํธํด์ int๋ก ๋ฐํString str2 = "์๋ฆฌ ์๋ฆฌ ์๋ผ์ ฉ ์๋ผ๋ฆฌ ์๋ผ"; int int1 = str2.indexOf('์'); int int2 = str2.indexOf('์', 4); // ๋๋ฒ์งธ ์ธ์ : ~๋ฒ์งธ ์ดํ/์ด์ ๋ถํฐ ์ |
indexOf๋ ํฌํจ๋์ง ์์ ๋ฌธ์๋ -1์ ๋ฐํํ๋ค.
๋ฌธ์ ์์ ์๊ตฌํ ์กฐ๊ฑด์ด๋ ๋๊ฐ๋ค.
๊ทธ๋ฅ ๋๋๊ณ ์ด๊ฑธ ์ฌ์ฉํ๋ผ๋ ๋ฌธ์ .
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String S = br.readLine();
char a = 'a';
for (int i = 0; i < 26; i++) {
System.out.print(S.indexOf(a) + " ");
a ++;
}
}
}
2675 ๋ฌธ์์ด ๋ฐ๋ณต (100ms)
๋ฌธ์
๋ฌธ์์ด S๋ฅผ ์ ๋ ฅ๋ฐ์ ํ์, ๊ฐ ๋ฌธ์๋ฅผ R๋ฒ ๋ฐ๋ณตํด ์ ๋ฌธ์์ด P๋ฅผ ๋ง๋ ํ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ฆ, ์ฒซ ๋ฒ์งธ ๋ฌธ์๋ฅผ R๋ฒ ๋ฐ๋ณตํ๊ณ , ๋ ๋ฒ์งธ ๋ฌธ์๋ฅผ R๋ฒ ๋ฐ๋ณตํ๋ ์์ผ๋ก P๋ฅผ ๋ง๋ค๋ฉด ๋๋ค. S์๋ QR Code "alphanumeric" ๋ฌธ์๋ง ๋ค์ด์๋ค.
QR Code "alphanumeric" ๋ฌธ์๋ 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ\$%*+-./: ์ด๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T(1 ≤ T ≤ 1,000)๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค๋ ๋ฐ๋ณต ํ์ R(1 ≤ R ≤ 8), ๋ฌธ์์ด S๊ฐ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์ฃผ์ด์ง๋ค. S์ ๊ธธ์ด๋ ์ ์ด๋ 1์ด๋ฉฐ, 20๊ธ์๋ฅผ ๋์ง ์๋๋ค.
์ถ๋ ฅ
๊ฐ ํ ์คํธ ์ผ์ด์ค์ ๋ํด P๋ฅผ ์ถ๋ ฅํ๋ค.
๊ทธ๋ฅ 3์ด๋ ABC์ ๋ ฅํ๋ฉด
AAABBBCCC์ด๋ ๊ฒ ์ถ๋ ฅ๋๊ฒ ํ๋ฉด ๋๋ ๋ฌธ์ ์ด๋ค.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
StringBuilder sb = new StringBuilder();
for (int t = 0; t < T; t++) {
StringTokenizer st = new StringTokenizer(br.readLine());
int R = Integer.parseInt(st.nextToken());
String S = st.nextToken();
for (int i = 0; i < S.length(); i++) {
for (int j = 0; j < R; j++) {
sb.append(S.charAt(i));
}
}
sb.append("\\n");
}
System.out.println(sb.toString());;
}
}
์ง๊ธ ์๊ฐํด๋ณด๋ ๊ตณ์ด ์ ๋ ๊ฒ ์ํ๊ณ ๋ฌธ์์ด ๋ฐ๋ณต ๋ฉ์๋ ์ฌ์ฉํด๋ ๋ ๋ฏํ๋ค.
๐ 1152 ๋จ์ด์ ๊ฐ์ (272ms)
- split
๋ฌธ์
์์ด ๋์๋ฌธ์์ ๊ณต๋ฐฑ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ์ด ๋ฌธ์์ด์๋ ๋ช ๊ฐ์ ๋จ์ด๊ฐ ์์๊น? ์ด๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋จ, ํ ๋จ์ด๊ฐ ์ฌ๋ฌ ๋ฒ ๋ฑ์ฅํ๋ฉด ๋ฑ์ฅํ ํ์๋งํผ ๋ชจ๋ ์ธ์ด์ผ ํ๋ค.
์ ๋ ฅ
์ฒซ ์ค์ ์์ด ๋์๋ฌธ์์ ๊ณต๋ฐฑ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋ค. ์ด ๋ฌธ์์ด์ ๊ธธ์ด๋ 1,000,000์ ๋์ง ์๋๋ค. ๋จ์ด๋ ๊ณต๋ฐฑ ํ ๊ฐ๋ก ๊ตฌ๋ถ๋๋ฉฐ, ๊ณต๋ฐฑ์ด ์ฐ์ํด์ ๋์ค๋ ๊ฒฝ์ฐ๋ ์๋ค. ๋ํ ๋ฌธ์์ด์ ๊ณต๋ฐฑ์ผ๋ก ์์ํ๊ฑฐ๋ ๋๋ ์ ์๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ๋จ์ด์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค.
๊ฐ๋จํ ๋ฌธ์ ์ธ ์ค ์์๋๋ฐ ์์ธ์ ์ค๋ฅ๊ฐ ์์๋ ๋ฌธ์ .
์ฐ์ split์ ์ฌ์ฉํ๋ค.
split : ์ฃผ์ด์ง ๊ธฐ์ค์ผ๋ก (~๊ฐ๊น์ง) ๋ถํ ํ์ฌ ๋ฌธ์์ด ๋ฐฐ์ด๋ก ๋ฐํ๋๋ ๊ณต๋ฐฑ ๊ธฐ์ค์ผ๋ก splitํ๋ค. |
String str1 = "๊ฐ๋๋ค๋ผ๋ง";
String str2 = "010-1234-5678";
String str3 = "ํ๋ ๋ ์
๋ท ๋ค์ฏ";
// ๐ก toCharArray : ๋ฌธ์์ด์ ๋ถํ ํ์ฌ ๋ฌธ์์ ๋ฐฐ์ด๋ก ๋ฐํ
char[] chAry1 = str1.toCharArray();
char[] chAry2 = str3
.replace(" ", "")
.toCharArray();
// ๐ก split : ์ฃผ์ด์ง ๊ธฐ์ค์ผ๋ก (~๊ฐ๊น์ง) ๋ถํ ํ์ฌ ๋ฌธ์์ด ๋ฐฐ์ด๋ก ๋ฐํ
String[] strAry1 = str1.split("");
String[] strAry2 = str2.split("-");
String[] strAry3 = str3.split(" ");
String[] strAry4 = str3.split(" ", 3);
๐ํ๋ฆฐ ์ฝ๋
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String S = br.readLine().trim();
String[] strAry = S.split(" ");
System.out.println(strAry.length);
}
}
์ ํ๋ ธ๋. ํ๋ฉด ํ๋์ ๊ฒฝ์ฐ๋ฅผ ๋นผ๋จน์๊ธฐ ๋๋ฌธ์ด๋ค.
๋ฐ๋ก "๊ทธ๋ฅ ๊ณต๋ฐฑ๋ง ์ ๋ ฅ๋์์ ๊ฒฝ์ฐ"
๊ทธ๋ฅ ๊ณต๋ฐฑ๋ง ์ ๋ ฅ๋์์๋ ๊ฐ์ด 1์ด ๋์์ ํ๋ฆฌ๋๊ฒ์ด๋ค
๐์๋ก ์์ฑํ ์ฝ๋
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String S = br.readLine().trim();
if (S.isEmpty()){
System.out.println(0);
}
else {
String[] strAry = S.split(" ");
System.out.println(strAry.length);
}
}
}
isEmpty() ⇒ ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ 0์ธ์ง ํ์ธํ๋ค.
“ ” ์ผ๋ก ์ ๋ ฅ๋ ๋ฌธ์์ด์ trim()์ ์ฌ์ฉํ์๋ ๊ฒฐ๊ณผ๋ ๋น ๋ฌธ์์ด์ด ๋๋ค.
๋ฐ๋ผ์ isEmpty()๋ฅผ ์ฌ์ฉํด์ผํ๋ค.
๊ทธ๋ฅ token์ผ๋ก ํด์ ๊ฐ์ ์ถ๋ ฅํ์ด๋ ๋์๋ฏ.
2908 ์์ (100ms)
๋๋ฌด ์ฌ์์ ๋ฌธ์ ์๋ต.
์ ๋ ฅ๋ฐ์ ์์๋ฅผ ๋ค์ง์ด์ ๊ฐ์ ๋น๊ตํด ํฐ ์๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์ ์ด๋ค.
import java.io.*;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
// StringBuilder๋ String ํ์
์ ์ธ์๋ก ๋ฐ๋๋ค. ๋ค๋ฅธ๊ฑด ์๋จ.
StringBuilder A = new StringBuilder(st.nextToken());
StringBuilder B = new StringBuilder(st.nextToken());
int a = Integer.parseInt(A.reverse().toString());
int b = Integer.parseInt(B.reverse().toString());
if(a>=b){
System.out.println(a);
}else {
System.out.println(b);
}
}
}
StringBuilder์ reverse๋ฅผ ์ด์ฉํด ๋ฌธ์์ด์ ๋ค์ง๊ณ , ์ด๋ฅผ int๋ก ํ๋ณํํ์ฌ ํ์ด์ฃผ์๋ค.
5622 ๋ค์ด์ผ (104ms)
- contains
์ด๊ฒ๋ ๊ฐ๋จํ ๋ฌธ์ ๋ผ ๋ฌธ์ ๋ฅผ ์๋ตํ๊ณ , ๋ฌธ์ ์์ฝ์ผ๋ก ์ค๋ช ํ๊ฒ ๋ค.
์ซ์ 1์ ๊ฑธ๋ ค๋ฉด ์ด 2์ด๊ฐ ํ์ํ๋ค. ( = ์ด๊ธฐ๊ฐ์ด 2์ด)
1๋ณด๋ค ํฐ ์๋ฅผ ๊ฑฐ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ์ด๋ณด๋ค ๋ ๊ฑธ๋ฆฌ๋ฉฐ,
ํ ์นธ ์์ ์๋ ์ซ์๋ฅผ ๊ฑธ๊ธฐ ์ํด์ 1์ด์ฉ ๋ ๊ฑธ๋ฆฐ๋ค. ( = 2๋ 3์ด๊ฐ ๊ฑธ๋ฆฐ๋ค๋ ๋ป)
๊ทธ๋ฌ๋, ์ ํ๋ ๊ฐ ์ํ๋ฒณ์ ํตํด ๊ฑธ ์ ์๋ค. ์ฆ, ์ซ์๊ฐ ์๋ ์ํ๋ฒณ์ ์ ๋ ฅ๊ฐ์ผ๋ก ๋ฐ๋๋ค.
์๋ฅผ ๋ค์ด, UNUCIC๋ 868242์ ๊ฐ๋ค.
์ ํ๋ฅผ ๊ฑธ๊ธฐ ์ํด์ ํ์ํ ์ต์ ์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ๋ผ.
๋ฐฐ์ด์ ๊ฐ ์ธ๋ฑ์ค๋ฅผ “์๊ฐ”์ผ๋ก ์๊ฐํ๋ค๋ฉด ์ฝ์ง ์์๊น ํ๊ณ ์ ๊ทผํด๋ณธ ๋ฌธ์ .
๊ฐ ์ซ์๋ค์๋ ์ํ๋ฒณ์ด ํ ๋น๋์ด์๋ค.
๊ทธ ์ซ์๋ฅผ ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ผ๊ณ ์๊ฐํ๋ฉด ๋๋ค.
๊ทธ๋์ alphaNum์ด๋ผ๋ ๋ฐฐ์ด์ ๋ง๋ค์๋ค.
๊ทธ ํ, ๊ฐ ํ ๋น๋ ์ซ์๋ค์ ๋ง๊ฒ ์ํ๋ฒณ๋ค์ ๋ฃ์ด์ค๋ค.
___
๊ทธ๋ฆฌ๊ณ ์ด ๋ฐฐ์ด์ ์ํํ๋ฉฐ
์ฃผ์ด์ง ์ํ๋ฒณ์ด ์ด๋ ์์น์ ์๋์ง contains๋ฅผ ํตํด ํ์ธํ๋ค.
String str_b1 = "์๋ ์ ํธ๋์ด๊ฐ ํ ๋ง๋ฆฌ ์ด์์ด์.";
// ๐ก contains : ํฌํจ ์ฌ๋ถ
boolean bool_b1 = str_b1.contains("ํธ๋์ด");
boolean bool_b2 = str_b1.contains("๋๋ฌด๊พผ");
๊ทธ๋ฆฌ๊ณ ๊ทธ ์ํ๋ฒณ์ด ํฌํจ๋์ด์๋๊ณณ์ ์๊ฐ์ ๋ํ๋ฉด ๋๋ค.
์๊ฐ์ ์ธ๋ฑ์ค์ ์ด๊ธฐ๊ฐ์ธ 2๋ฅผ ๋ํด์ ๊ตฌํ์๋ค.
0๋ฒ์ธ๋ฑ์ค (=์ซ์ 1๋ฒ)์ ์๊ฐ์ 2์ด์ด๋ฏ๋ก.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
String[] alphaNum = {"","ABC","DEF","GHI","JKL","MNO","PQRS","TUV","WXYZ",""};
int sum = 0;
for (int i = 0; i < input.length(); i++) {
String c = String.valueOf(input.charAt(i));
for (int j = 0; j < alphaNum.length; j++) {
if (alphaNum[j].contains(c)) {
sum += j+2;
}
}
}
System.out.println(sum);
}
}
๊ทธ๋ฆฌํ์ฌ ๋ด๊ฐ ์์ฑํ ์ฝ๋๋ ์ด๋ ๋ค.
11718 ๊ทธ๋๋ก ์ถ๋ ฅํ๊ธฐ (108ms)
๋ง ๊ทธ๋๋ก ์ ๋ ฅ๋ฐ์ ๊ทธ๋๋ก ์ถ๋ ฅํ๋ค.
์ ๋ฒ์ 10952๋ฌธ์ ์์ ์ฌ์ฉํ EOF๋ฅผ ์ฌ์ฉํด๋ณด์๋ค.
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
String str="";
while((str = br.readLine()) != null){
bw.write(str + "\\n");
}
bw.flush();
}
}
์์ํ๊ฒ ํต๊ณผ์๋ฃ