Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Vue
- cos
- Flutter
- 동적계획법과최단거리역추적
- android
- 안드로이드
- vuejs
- BAEKJOON
- 코테
- 백준
- Algorithm
- 코딩테스트
- 안드로이드스튜디오
- DFS
- 파이썬
- 분할정복
- 동적계획법
- cos pro 1급
- 코드품앗이
- Python
- 개발
- DART
- issue
- C++
- django
- cos pro
- codingtest
- AndroidStudio
- DFS와BFS
- 알고리즘
Archives
- Today
- Total
Development Artist
[COS Pro 1급, Python] 3차 6번 : 소수의 합으로 표현하기 본문
728x90
반응형
문제 유형
빈칸
난이도
normal
Note
1. 빈칸 유형이라서 난이도는 쉬움.
2. 하지만, 첫번째 for문에서 소수 리스트를 만드는 부분의 로직은 암기 필요! 절대절대절대 중요. '에라토스테네스의 체' 라는 유명한 개념이 사용됨.
Code
# -*- coding: utf-8 -*-
# UTF-8 encoding when using korean
# 3차 6번
def solution(n):
answer = 0
primes = [2]
for i in range (3, n + 1, 2) :
is_prime = True
for j in range(2, i) :
if i % j == 0 :
is_prime = False
break
if is_prime :
primes.append(i)
prime_len = len(primes)
for i in range(0, prime_len - 2) :
for j in range(i + 1, prime_len - 1) :
for k in range(j + 1, prime_len) :
if primes[i]+primes[j]+primes[k] == n:
answer += 1
return answer
n1 = 33
ret1 = solution(n1)
print("solution 함수의 반환 값은", ret1, "입니다.")
n2 = 9
ret2 = solution(n2)
print("solution 함수의 반환 값은", ret2, "입니다.")
※ 가끔 코드 중 print(~)가 있습니다. 정리 못한 점 죄송합니다.
728x90
반응형
'Algorithm > COS' 카테고리의 다른 글
[COS Pro 1급, Python] 3차 8번 : 선풍기를 몇대 사야 하나요 (0) | 2022.02.25 |
---|---|
[COS Pro 1급, Python] 3차 7번 : 카프리카 수 (0) | 2022.02.25 |
[COS Pro 1급, Python] 3차 5번 : 전광판 문구 출력 (0) | 2022.02.25 |
[COS Pro 1급, Python] 3차 4번 : 중복 문자열 이어붙이기 (0) | 2022.02.25 |
[COS Pro 1급, Python] 3차 3번 : 비숍으로부터 도망쳐 (0) | 2022.02.25 |
Comments