Header Ad

HackerRank Remove the First Capital Letter from Each Element problem solution

In this HackerRank Remove the First Capital Letter from Each Element problem solution In this challenge, we practice reading and transforming arrays.

Task

You are given a list of countries, each on a new line. Your task is to read them into an array and then transform them in the following way:

The first capital letter (if present) in each element of the array should be replaced with a dot ('.'). Then, display the entire array with a space between each country's names.

Input Format

The input format consists of a list of country names each on a separate line. The only characters present in the country names will be upper or lower-case characters and hyphens.

Output Format

Transform the names as described and display the entire array of country names with a space between each of them.

HackerRank Remove the First Capital Letter from Each Element problem solution


Problem solution.

a=(`cat $@`)
echo ${a[@]/[A-Z]/.}


Second solution.

n=0
while read c;
do 
    if [ "$c" != "" ]; then
        Country[$n]=$c
        ((n++))
    fi
done
for i in ${!Country[@]}; do
    Country[$i]=".${Country[$i]:1}"
done
echo "${Country[@]}"


Third solution.

i=0
while read line
do
    ary[i]=`echo "${line}" | sed -r 's/^[A-Z]+/./g'`
    ((i++))
done

echo ${ary[@]}


Fourth solution.

ar=()

while read input
do
    ar=("${ar[@]}" "$input")
done
declare -a pattern=( ${ar[@]/[A-Z]/.} )
echo ${pattern[@]}


Post a Comment

0 Comments