728x90
반응형

2675번 문제

https://www.acmicpc.net/problem/2675

 

2675번: 문자열 반복

문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다

www.acmicpc.net

VERSION 3.0

import sys

T = int(sys.stdin.readline())
res = []
for k in range(T):
    S,L = list(map(str , sys.stdin.readline().split()))

    idx = ""
    for i in list(map(str, L)):
        idx += i*int(S)
    res.append(idx)

for p in res:
    print(p)

==> IDX 활용!!

VERSION 2.0

import sys

T = int(sys.stdin.readline())
res=[]
for k in range(T):
    R = list(map(str, sys.stdin.readline().rstrip().split()))

    stri = list(R[1])

    idx = ''
    for i in stri:
        a = i*int(R[0])
        idx += a
    res.append(idx)
for p in res:
    print(p)

 

VERSION 1.0

import sys
while True:
    T = int(sys.stdin.readline()) #테스트케이스 개수 입력
    if T<1 or T>1000:
        print("T의 값 다시입력하세요")
    else:
        E = []
        for i in range(T): #n이 T보다 작을동안
            C,D = [] , []
            S = list(map(str,sys.stdin.readline().split())) #반복횟수 빈칸 입력할알파벳
            C = list(str(S[1])) #S = [반복횟수 , 'abcdef']
            #C = ['a' ,'b' , 'c' , 'd' , 'e' ,'f']
            print(C)
            if int(S[0])<1 or int(S[0])>8:
                print("반복횟수는 1이상 8이하 입니다.")
            elif len(C)<1  or len(C)>20:
                print("문자열 S의 길이는 적어도 1이상 20글자이하 이다.")
            else:
                for i in range(len(C)):
                    D.append(C[i]*int(S[0])) #D객체에 C[i]번째 문자열을 반복횟수만큼 곱한 값을 저장시켜라
            E.append("".join(D)) #join함수를 통해 합체 시켜라
        break
for i in E:
    print(i)

8번째줄 : T회반복 ==> 입력을 T번 받으라!

======

KEY POINT★

10번째줄 : S 객체에 ==> 빈칸을기준으로 나누어 입력값을 string형태의 리스트로 받아라!

11번째줄 : C 객체에 입력받은 따로따로 문자열을 분리하라!

=======

13번째줄: 내가 확인하고 싶어서 출력한것이다. 삭제 해도 되는 부분이다.

 

 

import sys

T = int(sys.stdin.readline())
res=[]
for k in range(T):
    R = list(map(str, sys.stdin.readline().rstrip().split()))

    stri = list(R[1])

    idx = ''
    for i in stri:
        a = i*int(R[0])
        idx += a
    res.append(idx)
for p in res:
    print(p)

 

728x90
반응형

+ Recent posts