반응형
반응형

[python] 구문 퀴즈, 파이썬

""" 
# What will be the output?
    A.Infinite loop
    B.120
    C.47
    D.48
"""
def rec(a,b):
    if a == 0:
        return b
    else:
        return rec(a - 1, a + b)

print(rec(8, 12))

# 48

 

반응형
반응형

[백준] 1017번 소수 쌍 - PYTHON

https://www.acmicpc.net/problem/1017

 

1017번: 소수 쌍

지민이는 수의 리스트가 있을 때, 이를 짝지어 각 쌍의 합이 소수가 되게 하려고 한다. 예를 들어, {1, 4, 7, 10, 11, 12}가 있다고 하자. 지민이는 다음과 같이 짝지을 수 있다. 1 + 4 = 5, 7 + 10 = 17, 11 +

www.acmicpc.net

import sys
import math

def dfs(x):
    global Y
    global matched
    global visited
    if visited[Y.index(x)]: return False
    visited[Y.index(x)] = True
    for y in Y:
        if x + y in primes:
            if y not in matched or dfs(matched[y]):
                matched[y] = x
                return True
    return False

N = int(sys.stdin.readline())
X = list(map(int, sys.stdin.readline().split()))
# X.sort()

# 소수 목록을 미리 준비
primes = []
for i in range(2, 2000):
    is_prime = True
    for j in range(2, i):
        if i % j == 0:
            is_prime = False
            break
    if is_prime: primes.append(i)
    else: continue

answers = []
for i in X:
    matched = {}
    if i == X[0]: continue
    if X[0] + i in primes:
        if N == 2:
            answers.append(i)
            break
        # print(i)
        # 첫번째 숫자와 현재 매치된 숫자를 제외한 새 리스트 생성
        Y = [x for x in X]
        del Y[0]
        del Y[Y.index(i)]
        matched = {}
        for y in Y:
            visited = [False for _ in range(len(Y))]
            dfs(y)
    
    # if matched: print(matched)
    if N != 2 and len(matched) == N - 2: answers.append(i)

if not answers:
    answers.append(-1)

answers.sort()

print(' '.join(list(map(str, answers))))

# 출처 : https://nerogarret.tistory.com/34

 

반응형
반응형

https://brunch.co.kr/@delight412/550

 

코딩과 글쓰기는 비슷한 점이 많다

골든래빗이 펴낸 '개발자 원칙'은 다양한 기업 현장에서 뛰는 나름 경력 있는 개발자들이 개발에 대한 각자 중요하게 생각하는 것을 담은 책이다. 9명이 강조하는 개발자 원칙이 담겼는데, 글쓰

brunch.co.kr

골든래빗이 펴낸 '개발자 원칙'은 다양한 기업 현장에서 뛰는 나름 경력 있는 개발자들이 개발에 대한 각자 중요하게 생각하는 것을 담은 책이다. 9명이 강조하는 개발자 원칙이 담겼는데, 글쓰기를 업으로 삼다 보니 글쓰기과 코딩이 비슷한 점이 많다는 내용을 담은 장동수 데이원컴퍼니 CTO의 글이 눈길을 끈다.

글을 읽다 보니 글쓰기와 코딩은 비슷한 점이 참 많은 것 같다. AI와 관련한 변화에 직면한 것도 그렇고. 챗GPT가 나오면서 글쓰는 일에도 변화가 있을 것이란 전망이 많은데, 코딩 쪽 역시 마이크로소프트 깃허브가 내놓은 코딩 AI 도우미인 코파일릿이 많은 관심을 끌고 있다.

반응형
반응형

[백준] 2016번 제곱ㄴㄴ수 - PYTHON

import math

min, max = map(int, input().split())
 
NN = [1] * (max - min + 1) 

tmp_01 = []

for i in range(2, int(math.sqrt(max)) + 1):
    tmp_01.append(i ** 2)


for i in tmp_01:
    j = math.ceil(min / i)
    while i * j <= max:
        NN[i * j - min] = 0
        j += 1

print(sum(NN))
반응형
반응형

 

import sys
import math

A_size = int(sys.stdin.readline())
A = sys.stdin.readline().replace("\n", "").split(' ')
A = [int(i) for i in A]

# A를 오름차순으로 정렬하여 작은 숫자부터 순서대로 정리된 새로운 list를 할당 
sorted_A = [i for i in A]
sorted_A.sort()

P = []
# A의 각 숫자들에 대해 sorted_A에서의 index를 찾아 몇번째로 작은 숫자인지 P 수열에 새롭게 append함.
for i in A:
    P.append(sorted_A.index(i))
    # 이미 할당한 숫자는 sorted_A에서 -1로 대채해 재탐색되지 않도록 함.
    sorted_A[sorted_A.index(i)] = -1

results = [i for i in P]

for result in results:
    sys.stdout.write(str(result)+' ')
    
#  출처 : https://nerogarret.tistory.com/31
반응형
반응형

[PYTHON] 모듈 예제, 모듈 불러오기- 파이썬

 

mod1.py를 생성하고 다른 파일에서 모듈을 호출한다.

https://github.com/ngio/python_study/blob/main/module_py.py

 

GitHub - ngio/python_study: python, konply, numpy, matplotlib, networkx, pandas

python, konply, numpy, matplotlib, networkx, pandas - GitHub - ngio/python_study: python, konply, numpy, matplotlib, networkx, pandas

github.com

import mod1
print(" module name is ", mod1.__name__)

 

# mod1.py 
def add(a, b): 
    return a+b

def sub(a, b): 
    return a-b

# if __name__ == "__main__"을 사용하면 C:\doit>python mod1.py처럼 직접 이 파일을 실행했을 때는 __name__ == "__main__"이 참이 되어 
# if문 다음 문장이 수행된다. 
# 반대로 대화형 인터프리터나 다른 파일에서 이 모듈을 불러서 사용할 때는 __name__ == "__main__"이 거짓이 되어 
# if문 다음 문장이 수행되지 않는다.

if __name__ == "__main__":
    print(add(1, 4))
    print(sub(4, 2))
반응형

+ Recent posts