https://www.acmicpc.net/problem/2675
2675번: 문자열 반복
문자열 S를 입력받은 후에, 각 문자를 R번 반복해 새 문자열 P를 만든 후 출력하는 프로그램을 작성하시오. 즉, 첫 번째 문자를 R번 반복하고, 두 번째 문자를 R번 반복하는 식으로 P를 만들면 된다
www.acmicpc.net
이 문제는 생각보다 어려워보이지는 않았는데, 아직 파이썬 언어에 대한 이해도가 높지 않아서
헷갈리는 부분은 있었다..
그리고 일단 내 식대로 문제는 풀었다만, 뭔가 시원하게 풀린 것 같지가 않아서
문제 풀면서도 다른 사람들은 어떻게 풀었는지, 봐야겠다. 하고 풀어봤다
우선 이 문제는 딱히 다른 설명은 필요없을 것 같고, 내가 어떻게 풀었냐면
import sys
n = int(input())
for i in range(n):
a = sys.stdin.readline()
for j in range(2,len(a)-1):
print(a[j]*int(a[0]),end='')
print()
이런식으로 풀었다.
그리고 다른 사람들 풀이를 보고 내가 풀은 것을 보면,
n = int(input())
for i in range(n):
num, s = map(str,input().split())
ans = ''
for j in s:
ans += int(num) * j
print(ans)
이런식으로 입력을 구분했다. 더불어서 나는 계속 for문을 횟수를 반복 하는 목적으로 많이 쓰고 있는데, 다른 사람들은
list안의 멤버들을 그대로 가져다가 쓰는 방식도 쓰고 있다는 것을 보고
당연하지만, 아직은 응용력이 많이 떨어진다고 생각했다.
더 많이 다른 사람들 코드도 보고 채워나가야겠다
백준 1193번 <분수찾기> [파이썬] (0) | 2022.07.20 |
---|---|
백준 2292번 <벌집> [파이썬] (0) | 2022.07.20 |
백준 10809번 <알파벳 찾기> [파이썬] (0) | 2022.07.14 |
백준 1065번 <한수> [파이썬] (0) | 2022.07.14 |
백준 4673번 <셀프 넘버> [파이썬] (0) | 2022.07.14 |