Super Kawaii Cute Cat Kaoani
본문 바로가기
✍️ Algortihm/C++

[백준] 10809번 알파벳 찾기 C++

by wonee1 2024. 4. 4.
728x90

 

문제풀이 

 

두가지 방법으로 풀이하였다. 

1. find 함수를 사용해서 푸는 방법

2. find 함수를 사용하지 않고 푸는 방법 

 

find 함수란?

 

문자열에서 문자가 최초로 등장한 인덱스 번호를 반환하는 함수

 

s.find(i) -> 문자열 s에서 문자 i가 최초로 등장하는 인덱스 번호를 반환 

 

 

 

코드 

#include <iostream>
#include <string>
using namespace std;

int main()
{
    string s;
    cin >> s;
    int i, j;
    string alphabet = "abcdefghijklmnopqrstuvwxyz";  //알파벳 배열 생성   
    
    for (i=0; i<alphabet.length(); i++)
    
        for (j=0; j<s.length(); j++) 
        {
            if (s[j] == alphabet[i]) //알파벳에 해당 글자가 있다면 
            {
                cout << j << " ";
                break; 
            }
             
           if (s[j] != alphabet[i]) //해당 글자가 없다면 -1 
                cout << -1 << " ";
           
          }
       
     }
     return 0;
}

1. find 함수를 사용하지 않은 코드 

 

 

 

#include <iostream>
#include <string>

using namespace std;


int main() {

	int cnt[26] = { 0 };

	string s;
	cin >> s;//문자열 입력 

	for (char i = 'a'; i <= 'z'; i++) {
		cout << (int)s.find(i) << ' '; // 문자열 s에서 문자 i가 최초로 등장하는 인덱스 번호 반환 
	}


	return 0;
}

2. find 함수를 사용한 코드 

728x90

'✍️ Algortihm > C++' 카테고리의 다른 글

백준 2908번 상수 C++  (0) 2024.04.08
백준 1152번 단어의 개수 C++  (0) 2024.04.08
[백준] 11720번 숫자의 합 C++  (0) 2024.04.04
[백준] 9086 문자열 C++  (0) 2024.04.04
[백준] 2743 단어 길이 재기 C++  (0) 2024.04.04