首页 > 代码库 > GDUFE ACM-1019 Repeating Characters

GDUFE ACM-1019 Repeating Characters

题目:http://acm.gdufe.edu.cn/Problem/read/id/1019

 

Problem Description:

  For this problem, you will write a program that takes a string of characters, S, and creates a new string of characters, T, with each character repaeated R times. That is, R copies of the first character of S, followed by R copies of the second character of S, and so on. Valid characters for S are the QR Code "alphanumeric" characters:  0 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z $ % * + - . / : 

Input:

The first line of input contains a single integer P,(1 <= P <= 1000), which is the number of data sets that follow. Each data set is a single ling of input consisting of the data set number N, followed by a space, followed by the repeat count R, (1 <= R <= 8), followed by a space , followed by the string S. The length of string S will always be at least one and no more than 20 characters. All the characters will be from the set of characters shown above.

Output:

For each data set there is one ling of output. It contains the data set number, N, followed by a single space which is then followed by the new string T, which is made of each character in S repeated R times.

Sample Input:

21 3 ABC2 5 /HTP

Sample Output:

1 AAABBBCCC2 /////HHHHHTTTTTTPPPPP


思路:做一个循环,把单个字符循环输出R遍。
复杂度分析:不算难题,但要用到字符串和循环,对于初学者来说还是有点难度的。


代码:

#include<stdio.h>
int main()
{
int P,N,R,i,j,a,b;
char S[100];
while(scanf("%d",&P)!=EOF)
{
for(b=0;b<P;b++)
{
scanf("%d%d",&N,&R);
scanf("%s",S);
i=0;
printf("%d ",N);
while(S[i]!=‘\0‘)
i=i+1;
for(j=0;j<i;j++)
for(a=1;a<=R;a++)
printf("%c",S[j]);
printf("\n");
}
}
return 0;
}

GDUFE ACM-1019 Repeating Characters