본문 바로가기

Python/code problem

(28)
[sw expert academy] 1983. 조교의 성적 매기기 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이거 좀 헷갈린다... 1등부터 10등까지 'A+', 'A0', 'A-', 'B+', 'B0', 'B-', 'C+', 'C0', 'C-', 'D0'을 받고 다시 11등부터 20등까지 'A+', 'A0', 'A-', 'B+', 'B0', 'B-', 'C+', 'C0', 'C-', 'D0' 를 받는 것으로 착각했다.. 올해 대학 첨 들어가는 티를 이렇게 낸다;; rank_list = ['D0', 'C-', 'C0', 'C+', 'B-', 'B0', 'B+', 'A-', 'A0','A+'] T =..
[sw expert academy] 1970. 쉬운 거스름돈 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com def dvd(sion,dend): return sion //dend T= int(input()) for t in range(1,T+1): money= int(input()) print("#{}".format(t)) for i in [50000,10000,5000,1000,500,100,50,10]: num=dvd(money,i) money-=num*i print(num,end=" ") print("")
[sw expert academy] 1926. 간단한 369 게임 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com N= int(input()) for a in range(1,N+1): a = str(a) count = 0 for i in range(len(a)): if a[i]=="3" or a[i]=="6" or a[i]=="9": count+=1 if count ==0: print(a,end=" ") else: print('-'*count,end=" ")
[sw expert academy] 2005. 파스칼의 삼각형 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com def my_factorial(n): if n>1: return n*my_factorial(n-1) else: return 1 T = int(input()) for t in range(1,T+1): N = int(input()) print("#{}".format(t)) print(1) for n in range(1,N): for i in range(n+1): print(my_factorial(n)//(my_factorial(n-i)*my_factorial(i)), end=" ") print(..
[sw expert academy] 1974. 스도쿠 검증 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이 문제는 3번의 실패 끝에 성공했다. 이것도 모범답안 없이 혼자 풀었다. sum을 이용해 합이 45가 되는지 안 되는지로 풀고 싶었지만 예외가 있을 것 같아 하나하나 확인해보는 방법으로 했다. 댓글을 보니 어떤 분께서 합은 45가 되지만 문제 조건에 맞지 않는 예시를 찾으셨다. 그것도 진짜 쉬운 일 아닌데.. 대단하시다는 생각이 든다. 내 코드는 다음과 같다. 56,924kb메모리 137ms실행시간 T = int(input()) for t in range(1,T+1): bool_lst_wd..
[sw expert academy] 1954. 달팽이 숫자 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이 문제 쉽지 않다.. 먼저 n=4일 때를 기준으로 먼저 코딩을 했다. def puzzle(): for i in range(4): for j in range(4): print(arr[i][j],end=" ") print(" ") arr = [] for i in range(4): arr.append([0 for t in range(4)]) on =1 for i in range(4): arr[0][i] = on on+=1 for i in range(3): arr[i+1][3] = on on+=1..
[sw expert academy] 1966. 숫자를 정렬하자 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 56,684 kb메모리 133 ms실행시간 T = int(input()) for t in range(1,T+1): N = int(input()) result = "" lst = list(map(int,input().split())) lst.sort() for i in lst: result += str(i) +" " print("#{} {}".format(t,result)) 모범답안에 영감을 받아 join으로도 풀어보면 56,688kb메모리 131ms실행시간 T = int(input()) fo..
[sw expert academy] 1961. 숫자 배열 회전 https://swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com (12/23일에 푼 문제다;; ㅋㅋ) 문제를 첨 보자마자 헉 했다.. 이걸 어떻게 풀지.. 그래서 가장 먼저 모범답안을 봤다. 내 기준 모범답안은 실행시간이 가장 짧은 것이었다. 아래 답안은 samsungsh 님의 답안이다. 51,668 kb메모리 107 ms실행시간 사실 이걸 봐도 바로 아..! 하고 느낌이 오지 않는다. 특히 for문 두개의 중첩은 더더욱.. 그래서 메모에 하나씩 써가며 분석했다. 위에 코드의 해설을 다음과 같다.(예시로 n=3인 경우를 들었다) 먼저 변수 T를 입력받고 ..