python 139

[백준 - Python] 1963 - 소수 경로

0. 문제 링크 https://www.acmicpc.net/problem/1963 1963번: 소수 경로 소수를 유난히도 좋아하는 창영이는 게임 아이디 비밀번호를 4자리 ‘소수’로 정해놓았다. 어느 날 창영이는 친한 친구와 대화를 나누었는데: “이제 슬슬 비번 바꿀 때도 됐잖아” “응 지금 www.acmicpc.net 1. 풀이 방법 에라토스테네스의 체로 소수들을 먼저 찾아놓음 그리고 각 자리수를 추출해서 풀었음 1, 10, 100의 자리 숫자는 0이 되어도 상관이 없지만, 1000의 자리는 0이 되면 안 됨 따라서 반복을 1, 10, 100은 합쳐서 27번, 1000의 자리는 8번 반복해야 함 아무튼 만약 1의 자리가 3이라면 -2, -1, 1, 2, 3, 4, 5, 6 이렇게 원래 숫자에 더하도록 구..

[백준 - Python] 1600 - 말이 되고픈 원숭이

0. 문제 링크 www.acmicpc.net/problem/1600 1600번: 말이 되고픈 원숭이 첫째 줄에 정수 K가 주어진다. 둘째 줄에 격자판의 가로길이 W, 세로길이 H가 주어진다. 그 다음 H줄에 걸쳐 W개의 숫자가 주어지는데, 0은 아무것도 없는 평지, 1은 장애물을 뜻한다. 장애물이 있 www.acmicpc.net 1. 풀이 방법 단순 BFS를 하면 되는데, 추가로 내가 이미 방문한 곳보다 말을 적게 탔을 경우도 생각해봐야 한다. 또한 임계치보다 말을 적게 탔을 경우에는 말을 추가로 탈 수 있도록 처리함 아래에서 check 변수는 어느 지점까지 말을 탄 횟수이고, cur_k는 현재 내가 말을 탄 횟수 그 외엔 특별한 점 없음 2. 코드 import sys from collections im..

[Anaconda] 아나콘다 가상 환경 생성 및 삭제

앞의 글을 읽으시면 이해에 도움이 됩니다. 2022.11.24 - [인공지능 (Artificial Intelligence, AI)/Anaconda] - [Anaconda] Anaconda 설치 (Linux) [Anaconda] Anaconda 설치 (Linux) 1. Anaconda란? 아나콘다(Anaconda)는 패키지 관리와 배포를 단순히 할 목적으로 과학 계산을 위한 파이썬과 R 프로그래밍 언어의 배포판입니다. 패키지 버전들은 패키지 관리 시스템 conda를 통해 관리 hi-guten-tag.tistory.com 1. 가상 환경이란? 아나콘다에서 가상 환경들은 서로 독립된 환경입니다. 따라서 각 가상 환경에 패키지, 라이브러리를 설치해도 다른 가상 환경에 영향을 주지 않습니다. 즉 독립적인 환경에서..

[Python] Instance의 Import에 관한 글

모듈, 클래스를 import 하는 방법은 구글에 검색하면 많이 나오니까 따로 정리는 안 하겠습니다. 신기한 사실을 하나 발견했는데, 바로 Class로부터 생성된 Instance도 Import 할 수 있다! 입니다. 우선 Class를 하나 만들어봅시다. # test1.py class Hello(): def __init__(self, name): self.name = name def print_hello(self): print(f'have a good day {self.name}') instance = Hello('woo') instance.print_hello() >>> have a good day woo 출력은 역시 예상한 대로 나오네요 그렇다면 다른 파일에서 해당 instance를 import 해봅시다..

[CV - python] 2D Partial Derivative for Edge Detection (엣지 검출을 위한 2차원 편미분)

코드가 궁금하다면 댓글을 남겨주세요. import numpy as np import cv2 img = cv2.imread('test4.jpg', cv2.IMREAD_GRAYSCALE) img = cv2.resize(img, (400, 600)) new_x = np.zeros(img.shape) new_y = np.zeros(img.shape) img = np.pad(img, (1, 1), 'constant', constant_values = 0) mask_x = np.array([[-1, 0, 1], [-2, 0, 2], [-1, 0, 1]]) mask_y = np.array([[1, 2, 1], [0, 0, 0], [-1, -2, -1]]) for i in range(1, img.shape[0] - m..

[Matplotlib - Python] Plotting with pandas and seaborn

Line Plots s = pd.Series(np.random.randn(10).cumsum(), index=np.arange(0, 100, 10)) s.plot() Series 데이터를 plot한 모습입니다. df = pd.DataFrame(np.random.randn(10, 4).cumsum(0), columns=['A', 'B', 'C', 'D'], index=np.arange(0, 100, 10)) df.plot() DataFrame을 그려넣은 모습입니다. Bar Plots fig, axes = plt.subplots(2, 1) data = pd.Series(np.random.rand(16), index=list('abcdefghijklmnop')) data.plot.bar(ax=axes[0], ..

[Matplotlib - Python] A Brief matplotlib API Primer

import matplotlib.pyplot as plt import numpy as np data = np.arange(10) data plt.plot(data) Figures and Subplots figure을 사용하여 matplotlib 객체를 넣을 수 있습니다. fig = plt.figure() ax1 = fig.add_subplot(2, 2, 1) ax2 = fig.add_subplot(2, 2, 2) ax3 = fig.add_subplot(2, 2, 3) fig add_subplot에서 해당 파라미터(n, x, y)의 의미는, n x n의 격자에서 x, y에 넣어라 라는 뜻입니다. ax3.plot(np.random.randn(50).cumsum(), 'k--') fig 3번째에 해당 그림을 ..

[Pandas - Python] Pivot Tables and Cross-Tabulation - pivot_table(), crosstab()

데이터는 다음과 같습니다. tips[:6] total_billtipsmokerdaytimesizetip_pct 016.991.01NoSunDinner20.059447 110.341.66NoSunDinner30.160542 221.013.50NoSunDinner30.166587 323.683.31NoSunDinner20.139780 424.593.61NoSunDinner40.146808 525.294.71NoSunDinner40.186240 이후 pivot_table을 day와 smoker에 대해 설정하고, 함수를 적용하면 tips.pivot_table(index=['day', 'smoker']) sizetiptip_pcttotal_bill daysmoker FriNo2.2500002.8125000.151..

[Pandas - Python] 지금까지의 예시 + 코드에 대한 설명

s = pd.Series(np.random.randn(6)) s[::2] = np.nan s 0 NaN 1 0.050009 2 NaN 3 0.852965 4 NaN 5 -0.023493 dtype: float64 랜덤으로 6개의 숫자를 생성한 후, s에 Series로 할당했고, 2배 간격으로 0, 2, 4의 row에 NaN을 넣었습니다. s.fillna(s.mean()) 0 0.293160 1 0.050009 2 0.293160 3 0.852965 4 0.293160 5 -0.023493 dtype: float64 s의 평균을 fillna를 통해 넣었습니다. 또 다른 예시를 봅시다. states = ['Ohio', 'New York', 'Vermont', 'Florida', 'Oregon', 'Nevad..