백준 11720 자바
숫자의 합
package StringEX;
import java.util.Scanner;
public class Q11720 {
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
int cnt = sc.nextInt();
String value = sc.next();
int ans=0;
for(int i=0; i<cnt; i++){
ans += value.charAt(i)-'0';
}
System.out.println(ans);
}
}
여기서 중요한 포인트는 Char type의 문자를 어떻게 숫자로 바꾸냐이다.
이는 숫자 문자에 '0'문자를 빼주면 아스키 코드값에서 int형 정수를 가르키게 된다.
" value.charAt(i) - '0' "
백준 10809 자바
알파벳 찾기
package StringEX;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Q10809 {
public static void main(String args[])throws IOException {
int[] alpha = new int[26];
Arrays.fill(alpha, -1);
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String txt = br.readLine();
for(int i=0; i < txt.length(); i++ )
{
int index = txt.charAt(i) - 'a';
if(alpha[index]!=-1) continue;
else{
alpha[index] = i;
}
}
for(int x : alpha){
System.out.print(x+" ");
}
}
}
Arrays.fill( array, value) : Arrays내 값들을 value로 모두 초기화 시킴
이 문제에서는 소문자 관계에 대하여 정보값을 반환해야 하므로 기존의 사용하던 charAt(i) - '0'을 하면 안되고
소문자 시작 값 'a'를 연산하여서 charAt(i) - 'a'를 하면 올바른 인덱스 값을 할당할 수 있다.
동일 문자의 경우 if문을 사용해서 배열안의 값이 -1이 아닌 경우로 따로 처리해주면 되겠다 ~
백준 11720 자바
숫자의 합
반응형
'Code > baekjoon [ 단계별 ]' 카테고리의 다른 글
백준 단계별 <문자열2 > (0) | 2022.02.28 |
---|---|
백준 단계별 <문자열> (0) | 2022.02.25 |
백준 단계별 문제 <함수> (0) | 2022.02.20 |
백준 단계별 문제 <배열> (0) | 2022.02.19 |
백준 단계별 문제 <1차원 배열> (0) | 2022.02.16 |