포포's 코딩&일상 기록

10월 5일 목요일 코테 -별그리기 본문

카테고리 없음

10월 5일 목요일 코테 -별그리기

포포252 2023. 10. 5. 23:39

 

No. 1

 

 

-  문제 :별표 출력하기 6

https://www.codetree.ai/missions/4/problems/print-star-6?&utm_source=clipboard&utm_medium=text 

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

 

코드 

 

n= int(input())
#줄어들기
for i in range(n,0,-1):
    for t in range((n-i)*2):
        print(" ",end="")
    for j in range(2*i-1):
        print('*',end=" ")
    print()

#늘어나기
for i in range(2,n+1):
    for t in range((n-i)*2):
        print(" ",end="")
    for j in range(2*i -1):
        print('*',end=" ")
    print()

 

새롭게 알게된것 

 

 

 

주의할점

 

앞에 빈칸 있는거 주의 

 

 

No. 2

 

 

-  문제 :별 그리기

https://www.codetree.ai/missions/4/problems/star-drawing?&utm_source=clipboard&utm_medium=text 

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

코드 

 

n= int(input())

#증가
for i in range(n): #세로 
    for t in range(n-i-1,0,-1): # 공백 
        print(" ",end="")
    for j in range(i*2+1):
        print("*",end="")

    print()


#감소
for i in range(n-1): #세로
    for t in range(i+1): #공백
        print(" ",end="")
    for j in range(2*(n-i-1)-1): #왜이런건지 부족.. 
        print("*",end="")
    print()

 

새롭게 알게된것 

 

gpt 가 리팩토링 해준거

n = int(input("숫자를 입력하세요: "))

# 증가 부분
for i in range(n):
    spaces = " " * (n - i - 1)
    stars = "*" * (i * 2 + 1)
    print(f"{spaces}{stars}")

# 감소 부분
for i in range(n - 1):
    spaces = " " * (i + 1)
    stars = "*" * (2 * (n - i - 1) - 1)
    print(f"{spaces}{stars}")

 

주의할점

 

실수많이함... 부족한듯 .. 생각많이 안하고 그냥 감으로 푸는듯 

 

 

No. 3

 

 

-  문제 :체크 다이아몬드

https://www.codetree.ai/missions/4/problems/check-diamond?&utm_source=clipboard&utm_medium=text 

 

코드트리 | 코딩테스트 준비를 위한 알고리즘 정석

국가대표가 만든 코딩 공부의 가이드북 코딩 왕초보부터 꿈의 직장 코테 합격까지, 국가대표가 엄선한 커리큘럼으로 준비해보세요.

www.codetree.ai

코드 

 

n= int(input())
#증가
for i in range(1,n+1):
    #공백
    for j in range(n-i):
        print(" ",end="")
    #별
    for k in range(i):
        print("*",end=" ")
    
    print()


#감소

for i in range(n-1):
    #공백
    for j in range(i+1):
        print(" ",end="")
    #별
    for k in range(n-1-i,0,-1):
        print("*",end=" ")
    print()

 

새롭게 알게된것 

 

 

 

주의할점

 

실수가 많았다