코드 natural_num = set(range(1,10001)) generated_num = set() for i in range(1, 10001): for j in str(i): i += int(j) generated_num.add(i) self_num = sorted(natural_num - generated_num) for k in self_num : print(k) 이 문제에서는 셀프 넘버를 구하기 위해 생성된 변수를 구하고 이를 generated_num 변수에 저장한다. natural_num 변수는 1~10000을 저장하고 있으며 셀프 넘버를 구하기 위해 natural_num에 저장된 값들 중에 generated_num 값들을 빼주면 되기에 set자료형을 사용하여 차집합을 연산한다. sorte..
코드 n = int(input()) d = [] for i in range(n): sum = 0 score = 0 case = input() for j in range(len(case)): if case[j] == 'O': score += 1 sum += score else : score = 0 d.append(sum) for K in d: print(K) 문자열에서 'O'가 연속적으로 있는 경우는 if case[j] =='O' 를 통해 score 값으로 1씩 올리며 더해준다. else절에서 score값을 0으로 다시 초기화함으로써 X일때를 표현한다.
코드 c = int(input()) d = [] for i in range(c): tol = 0 avg = 0 count = 0 n_score = list(map(int, input().split())) tol = sum(n_score) - n_score[0] avg = tol/(len(n_score)-1) for j in range(1, len(n_score)) : if n_score[j] > avg : count += 1 d.append((count/(len(n_score)-1))*100) for k in range(c): print(f'{d[k]:.3f}%') 총합 변수 tol, 평균 변수 avg, 각 테스트 케이스에서 평균 보다 높은 점수의 개수는 count 변수로 저장을 하였다. tol에서는 각..