In this HackerRank Concatenate an array with itself problem solution we have given a list of countries, each on a new line, your task is to read them into an array. Then, concatenate the array with itself (twice) - so that you have a total of three repetitions of the original array - and then display the entire concatenated array, with a space between each of the countries' names.
Input Format
A list of country names. The only characters present in the country names will be upper or lower-case characters and hyphens.
Output Format
Display the entire concatenated array, with a space between each of them.
Problem solution.
arr=($(cat)) printf "${arr[*]} ${arr[*]} ${arr[*]}"
Second solution.
while read country do countries=("${countries[@]}" $country) done for i in `seq 1 3` do echo -n "${countries[@]} " done
Third solution.
#! /bin/bash while read line do array[${#array[@]}]=$line done echo "${array[@]} ${array[@]} ${array[@]}"
Fourth solution.
ARRAY=() while read line; do ARRAY+=($line) done; RESULT=() for i in `seq 0 ${#ARRAY[@]}`; do RESULT+=(${ARRAY[$i]}) done; for i in `seq 0 ${#ARRAY[@]}`; do RESULT+=(${ARRAY[$i]}) done; for i in `seq 0 ${#ARRAY[@]}`; do RESULT+=(${ARRAY[$i]}) done; echo ${RESULT[@]}
0 Comments