관리 메뉴

솜씨좋은장씨

[HackerRank] String Manipulation : Alternating Characters (Python) 본문

Programming/코딩 1일 1문제

[HackerRank] String Manipulation : Alternating Characters (Python)

솜씨좋은장씨 2020. 3. 26. 19:30
728x90
반응형

You are given a string containing characters A and B only. Your task is to change it into a string such that there are no matching adjacent characters. To do this, you are allowed to delete zero or more characters in the string.

Your task is to find the minimum number of required deletions.

For example, given the string s = AABAAB, remove an A at positions 0 and 3 to make s = ABAB in 2 deletions.

 

Function Description

Complete the alternatingCharacters function in the editor below. It must return an integer representing the minimum number of deletions to make the alternating string.

alternatingCharacters has the following parameter(s):

  • s: a string

Input Format

The first line contains an integer , the number of queries.
The next  lines each contain a string .

 

Constraints

  • 1 <= q <= 10
  • 1 <= | s | <= 10^5
  • Each string  will consist only of characters A and B

Output Format

For each query, print the minimum number of deletions required on a new line.

 

Sample Input

5
AAAA
BBBBB
ABABABAB
BABABA
AAABBB

Sample Output

3
4
0
0
4

Explanation

The characters marked red are the ones that can be deleted so that the string doesn't have matching consecutive characters.

 

Solution

#!/bin/python3

import math
import os
import random
import re
import sys

# Complete the alternatingCharacters function below.
def alternatingCharacters(s):
    count = 0
    for i in range(len(s)-1):
        if s[i] == s[i+1]:
            count = count + 1
    return count

 

 

SOMJANG/CODINGTEST_PRACTICE

1일 1문제 since 2020.02.07. Contribute to SOMJANG/CODINGTEST_PRACTICE development by creating an account on GitHub.

github.com

 

Comments