아직 몇문제 안풀어봤지만, 풀때마다 매번 내가 얼마나 부족한지 느낀당,,,ㅎ

근데 내가 자꾸 미루길래,, 일주일에 한 두번 정도 블로그에 업로드하기로 결정

(진짜 난 뼈속까지 J 형이 틀림없당 ㅎㅅㅎ)


일단 이번에는 입출력 위주로 풀어봄!

근데 매번 런타임 에러 나서 속상,,,, 헤헤


1. 기본 입출력 문제: 줄바꿈 유무

1000

inputs = input()
A, B = inputs.split()
print(int(A)+int(B))

2558

A = input()
B = input()
print(int(A)+int(B))


2. 입력받은 그대로 출력

11718

while True:
    try:
        print(input())
    except EOFError:
        break

사실 이 부분은 너무 생소했당 ,,,

try except 개념 자체는 알고 있었는데 python code로 만나는게 안익숙해서 그런가봥

그래서 그냥 다른분들 코드를 들여다 봤당

for i in range(100):
    inputs = input()
    if len(inputs)>0 and len(inputs)<=100 and inputs[i]!=" ":
        print(inputs)
    elif len(inputs)==0:
        break

이게 내가 처음으로 만든 코드인데,

그래도 이젠 이 코드가 왜 잘못되었는지는 알겠당


3. 별 출력하기

2438

num = int(input())

output = ""
for i in range(num):
    output +="*"
    print(output)

별 문제는 옛날에 웹파이썬 프로그래밍 수업 들을 때 (무려 2년 전)

퀴즈로 한번 만났던 앤데 또 만났다 근데 그만큼 클래식하고 군더더기 없는 문제인듯

2522

이 문제는 사실 오른쪽 정렬로 출력하기 (ex ‘%10s’ % ‘* ‘) 으로 될 줄 알았는데 런타임 에러가 나버렸당 히히

근데 평소였으면 그냥 뚜껑 출력하고 아래 출력했을 텐데

이번엔 안그러고 싶었거든,,, 반복문 하나로 만들고 싶었는데

num = int(input())
output = []

# step 1) make long empty output
for i in range(num):
    output.append(" ")

# step 2) print stars
for i in range(1,2*num):
    if (i>num): count = 2*num-i
    else: count = i

    for j in range(1,count+1):
        temp[-j] = '*'
    print(''.join(temp))

왜 이게 안되지 생각하다 python은 기본적으로 pass by reference인걸 까먹었음을 알아냈당

num = int(input())

# step 1) print stars of top
for i in range(1,num+1):
    print(" "*(num-i)+"*"*i)
# step 2) print starts of bottom
for j in range(1,num):
    print(" "*(j)+"*"*(num-j))

이건 결국 생각해낸 답지,,,ㅎ

시간복잡도를 생각하면 그래도 뚜껑 따로 아래 따로 만드는게 나을 듯!

그리고 list를 이용하기 보다는 그냥 python 이 간결함을 고려하여

이렇게 출력해도 될거같당 히히

2442

num = int(input())

for i in range(num):
    print(" "*(num-1-i)+ "*"*(i) + "*"+ "*"*(i)) # print(" "*(num-1-i)+ "*"*(2*i+1))

10991

num = int(input())

for i in range(1,num+1):
    output = ""
    for j in range(2*i):
        if j%2 ==1:
            output+="*"
        else:
            output+=" "
    print(" "*(num-i)+ output)

이건 출력 형식이 잘못되었다는데 왜그러지

10991은 진짜 다양한 풀이가 많아서 넘모 신기했당 히히