simsimjae   4년 전

#include <iostream>

#include <algorithm>

#include <memory.h>

#include <string>

using namespace std;

int n;

string input[101];

int count(string temp) //DOG에 현재 입력 문자열의 알파벳이 몇개 포함되있는지 카운트

{

    int ret=0;

    string str; //중복을 제거한 문자열 ex)DLLO -> DLO

    for(int i=0; i<temp.size(); i++)

        if(str.find(temp[i]) == -1) str += temp[i];

    

    for(int i=0; i<str.size(); i++)

    {

        if(input[1].find(str[i]) != -1) ret++;

    }

    return ret;

}

int main()

{

    int n,result=0;

    cin>>n;

    cin>>input[1];

    for(int i=2; i<=n; i++)

    {

        cin>>input[i];

        int c = count(input[i]);

        if(input[i].size() == input[1].size()-1 && c == input[i].size()) result++;

        if(input[i].size() == input[1].size() && c == input[1].size()-1) result++;

        if(input[i].size() == input[1].size() && c == input[1].size()) result++;

        if(input[i].size() == input[1].size()+1 && c == input[1].size()) result++;

        if(input[i].size() == input[1].size()+1 && c == input[i].size()) result++;

    }

    cout<<result<<endl;

    return 0;

}


제 코드인데 문제 예시로 나와있는 마지막

DOLL을 cin이 받을때 프로그램이 멈춰버리는데 이유가 뭐죠 ????

댓글을 작성하려면 로그인해야 합니다.