[HackerRank/C++] Repeated String

2023. 2. 7. 07:50코딩테스트 해커랭크/Algorithms -Easy

순환되는 문자열 s를 받고, s의 전체 길이는 n이라고 할때 전체 문자열에서 a가 몇개인지 return 한다

long repeatedString(string s, long n)
{
    long result = 0;
    
    for (int i = 0; i < s.length(); ++i)
        if ('a' == s[i])
            ++result;
    
    result = (n / s.length()) * result;
    
    for (int i = 0; i < n % s.length(); ++i)
        if ('a' == s[i])
            ++result;
    
    return result;
}

첫번째로 순환되는 문자열 s에서 a가 몇개 나오는지 확인해 그 값을 result에 저장한다

 

이 후 문자열 전체 길이인 n을 s.length()로 나눠 그 몫을 result에 곱해준다

 

이제 n을 length로 나눈 나머지만큼만 s를 다시 확인하며 문자 a일 경우 result의 값을 증가시키고 return 한다