https://www.acmicpc.net/problem/10809
- ๋ฌธ์์ด์ด ์ฒ์ ๋ํ๋ ์์น๋ฅผ ๊ณ์ฐํ๋ ๊ฒ ํท๊ฐ๋ฆผ
- ์ํ๋ฒณ (A-Z) ์ด ์ด 26๊ฐ์ธ ๊ฒ์ ์์์ผ ํ ์ ์๋ ๋ฌธ์
- ์ํ๋ฒณ ๊ฐ์๋งํผ ๋ฐฐ์ด์ ๋ง๋ค๊ณ , ์ ๋ ฅ๊ฐ์ ์์์ ๋น๊ต
- '์ฒ์ ๋ฑ์ฅํ๋ ์์น' ๋ผ๋ ์ถ๋ ฅ ์กฐ๊ฑด์ด ์๊ธฐ ๋๋ฌธ์, ๋ชจ๋ ์ํ๋ฒณ ๋ฐฐ์ด์ -1๋ก ์ด๊ธฐํํ๋ค.
- ์๋ฅผ ๋ค์ด c๊ฐ 'a'๋ผ๋ฉด c-'a'๋ 0์ด๋ฏ๋ก arr[0]์ 'a'์ ์์น๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
- ๋ง์ฐฌ๊ฐ์ง๋ก c๊ฐ 'b'๋ผ๋ฉด c-'a'๋ 1์ด๋ฏ๋ก arr[1]์ 'b'์ ์์น๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
- ์ฆ , arr[c-'a']๋ ๋ฌธ์ c๊ฐ ์ฒ์ ๋ฑ์ฅํ ์์น๋ฅผ ๊ฐ๋ฆฌํจ๋ค.
ํ์ด
import java.io.*;
class Main{
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//์ํ๋ฒณ ์์ ์ด 26๊ฐ
int[] arr = new int[26];
for(int i=0; i<arr.length; i++){
arr[i] = -1;
}
String str = br.readLine();
for(int i=0; i<str.length(); i++){
//๋ฌธ์์ด ์์ ์ถ์ถ
char c = str.charAt(i);
//๋ฌธ์์ด์ด ์ฒ์ ๋ํ๋ ์์น
if(arr[c-'a'] == -1){
arr[c-'a'] = i;
}
}
for(int i=0; i<arr.length; i++){
System.out.print(arr[i] + " ");
}
br.close();
}
}
'Algorithm > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Silver V/JAVA] 10815 ์ซ์์นด๋ (0) | 2024.11.18 |
---|---|
[Bronze II/JAVA] 84753226 ์์ (0) | 2024.11.02 |
[Bronze II/JAVA] 10811 ๋ฐ๊ตฌ๋ ๋ค์ง๊ธฐ (0) | 2024.10.25 |
[Bronze II/JAVA] 3052 ๋๋จธ์ง (0) | 2024.10.23 |
[Bronze II/JAVA] 10813 ๊ณต ๋ฐ๊พธ๊ธฐ (0) | 2024.10.21 |