경험의 기록

문제 : www.acmicpc.net/problem/10809

 

10809번: 알파벳 찾기

각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출

www.acmicpc.net

 

풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// 10809 알파벳 찾기
#include <iostream>
using namespace std;
 
 
int main()
{
    string s;
    cin >> s;
    int arr[26]; // 알파벳 담을 배열
 
    for (int i = 0; i <= 25; i++) {
        arr[i] = -1// 배열 -1으로 초기화
    }
    
    for (int i = 0; i < s.length(); i++) {
        if(arr[(int)s[i] - 97== -1
        {
            arr[(int)s[i] - 97= i; // 아스키코드 빼줌. 나온 알파벳 자리에 그 알파벳 위치 저장.(-1인 것들만)
        }
 
    }
    for (int i = 0; i <= 25; i++) {
        cout << arr[i]<<" ";
    }
    return 0;
}
cs
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading