728x90

백준 18

백준 1193

#1193 x = int(input()) d = 1 # 대각선 while x > d: x -= d d += 1 if d % 2 == 0: up = x down = d - x + 1 elif d % 2 == 1: up = d - x + 1 down = x print(up,"/",down,sep="") 이 문제는 규칙을 알지만 수식으로 나타내는 것을 어떻게 해야할 지 몰라 많이 고민했던 부분이다. 결국 검색의 도움을 받아 코드를 완성했지만 다시 생각해내서 풀라고 하면 다시 오랜 고민을 할 것같은 문제이다. 수학 문제 부분은 규칙은 이해가 가지만 코드로 구현하는 부분이 너무 어렵다는 생각이 든다. 다시 봐야 할 문제 중 하나!

백준 4344

#4344 test_case = int(input()) for i in range(test_case): score = list(map(int,input().split())) sum = 0 new = [] for j in score[1:]: sum += j avg = sum/score[0] for j in score[1:]: if avg < j: new.append(j) result = len(new)/score[0]*100 print("{:.3f}".format(result),"%",sep='') 처음에 avg비교 전에 for j~ 부분을 안쓰고 했더니 계속 완전 다른 값이 나왔다. 이유를 아무리 봐도 모르겠었다가 다시 더 추가했더니 돌아간다... 복잡해증말!

728x90
반응형