We will find a way, we always have.

-interstellar

분류 전체보기 289

[프로젝트] 코드 관리 과정!

사실 글을 정리하기로 한 후 내 봇에 많은 일들이 있었다. 팬즈 서버가 다운 되어 한동안 봇이 활동을 하지 않았던 일도, 셀레니움 문법이 변경되어 코드가 작동하지 않았던 일도 ㅎ 다사다난했다. 코드의 변경 기록을 남기기 위해 깃헙에도 코드를 올리기로 하였다! 코드 구경은 아래의 링크에서 https://github.com/reddevilmidzy/itzy_fans GitHub - reddevilmidzy/itzy_fans: 팬즈 게시판 새글 알림 트윗봇 소스 코드 팬즈 게시판 새글 알림 트윗봇 소스 코드. Contribute to reddevilmidzy/itzy_fans development by creating an account on GitHub. github.com 과정도 계속 작성해나갈 예정이다.

Ploject 2023.01.10

[백준] 1719번: 택배 - 파이썬

🔈 문제 명우기업은 2008년부터 택배 사업을 새로이 시작하기로 하였다. 우선 택배 화물을 모아서 처리하는 집하장을 몇 개 마련했지만, 택배 화물이 각 집하장들 사이를 오갈 때 어떤 경로를 거쳐야 하는지 결정하지 못했다. 어떤 경로를 거칠지 정해서, 이를 경로표로 정리하는 것이 여러분이 할 일이다. 예시된 그래프에서 굵게 표시된 1, 2, 3, 4, 5, 6은 집하장을 나타낸다. 정점간의 간선은 두 집하장간에 화물 이동이 가능함을 나타내며, 가중치는 이동에 걸리는 시간이다. 이로부터 얻어내야 하는 경로표는 다음과 같다. 경로표는 한 집하장에서 다른 집하장으로 최단경로로 화물을 이동시키기 위해 가장 먼저 거쳐야 하는 집하장을 나타낸 것이다. 예를 들어 4행 5열의 6은 4번 집하장에서 5번 집하장으로 최단..

[백준] 2133번 타일 채우기 - 파이썬, 자바

🔈 문제 3×N 크기의 벽을 2×1, 1×2 크기의 타일로 채우는 경우의 수를 구해보자. 📝입력 첫째 줄에 N(1 ≤ N ≤ 30)이 주어진다. 📑출력 첫째 줄에 경우의 수를 출력한다. 📚 문제 풀이 dp 점화식을 찾아내는 문제였다. 전형적인 dp 문제. 위의 사진이 N이 12일 때의 한 경우이다. 그림을 조금 그려보면 N이 홀수일때는 2X1, 1X2 타일로 벽을 전부 채울 수 없다. 때문에 N이 홀수면 경우의 수는 0이 된다. N이 2일 때는 3가지의 경우의 수가 등장한다. N이 4일 때는 총 11가지의 경우의 수가 등장하는데 N이 4일 때만 나올 수 있는 경우의 수 2개랑 N이 2일 때의 경우의 수인 3을 제곱한 결과이다. 처음에는 이렇게 생각하여 점화식을 적었는데 틀렸습니다 판정을 받았다. 결국 질..

[백준] 1261번: 알고스팟

🔈 문제 알고스팟 운영진이 모두 미로에 갇혔다. 미로는 N*M 크기이며, 총 1*1크기의 방으로 이루어져 있다. 미로는 빈 방 또는 벽으로 이루어져 있고, 빈 방은 자유롭게 다닐 수 있지만, 벽은 부수지 않으면 이동할 수 없다. 알고스팟 운영진은 여러명이지만, 항상 모두 같은 방에 있어야 한다. 즉, 여러 명이 다른 방에 있을 수는 없다. 어떤 방에서 이동할 수 있는 방은 상하좌우로 인접한 빈 방이다. 즉, 현재 운영진이 (x, y)에 있을 때, 이동할 수 있는 방은 (x+1, y), (x, y+1), (x-1, y), (x, y-1) 이다. 단, 미로의 밖으로 이동 할 수는 없다. 벽은 평소에는 이동할 수 없지만, 알고스팟의 무기 AOJ를 이용해 벽을 부수어 버릴 수 있다. 벽을 부수면, 빈 방과 동일..

[Git] commit 작성 규칙

로컬 환경에서 코드를 수정하고, add와 commit이란 작업을 하는데 commit message를 남길 때 규칙이 있다. Commit message 7가지 규칙 제목과 본문을 빈 행으로 구문한다 제목을 50글자 내로 제한 제목 첫 글자는 대문자로 작성 제목 끝에 마침표 넣지 않기 제목은 명령문으로 사용하며 과거형을 사용하지 않는다 본문의 각 행은 72글자 내로 제한 어떻게 보다는 무엇과 왜를 설명한다 Commit message 구조 다음과 같은 구조가 commit message 에서 사용되고 있다. : Type feat: 새로운 기능 추가, 기존의 기능을 요구 사항에 맞추어 수정 fix: 기능에 대한 버그 수정 build: 빌드 관련 수정 chore: 패키지 매니저 수정, 그 외 기타 수정 ex) .g..

DevOps/깃 2022.10.28

[백준] 알고리즘 회고

박수한번 치고 시작하겠습니다 (짝짝짝)👏👏👏 백준 600문제 달성과 플레티넘5 등급에 달성했다! 백준에 가입한건 2021년 10월쯤이였고 각잡고 시작한 것은 2022년 3월부터였다. 그때부터 꾸준히 끈기있게 하루에 한문제 이상씩은 풀어왔다 처음에는 단계별로 풀었다가 막히는 부분들 모르는 알고리즘이 생길때쯤에는 이것이 취업을 위한 코딩 테스트다 책을 통해 배워나갔다. 그리고 추가적으로 그룹 스터디를 같이 진행하여 매주 3문제 이상씩 풀고, 월요일마다 줌으로 문제를 어떻게 풀었는지, 또 자신이 짠 코드를 설명하는 시간을 가졌다. 남에게 설명해야했기에 좀더 확실하게 이해하여야 했고, 또 코드도 가독성 있게 짜는 노력을 했다. 문제 태그 분포는 다음과 같다. 보이는 바와 같이 그래프를 좋아한다 ㅎ 최근에는 자바..

Blah blah 2022.10.22

[네트워크] 네트워크 구성

네트워크 형태 (LAN, MAN, WAN) 네트워크는 거리와 크기에 따라 통신망을 구분한다. LAN(Local Area Network) (근거리 네트워크)은 범위가 건물 안이나 특정 지역인 네트워크로 유선 케이블, 적외선 링크, 무선 송수신기등을 이용하여 통신한다. 집이나 빌딩 안에 있는 사무실 등 지리적으로 제한된 곳에서 컴퓨터와 프린터, 스캐너 등을 연결할 수 있는 네트워크가 LAN이다. MAN(Metropolitan Area Network) 은 LAN보다는 더 넓은 범위의 네트워크이다. 도시와 도시를 연결해주고 ISP(인터넷 서비스 제공 업체) 역할을 수행할 수 있다. 한국의 ISP는 SK telecom, LG U+, KT 가 있다. WAN(World Area Network) (광역 네트워크)는 L..

[네트워크] What is Network?

네트워크란? 네트워크의 사전적 정의는 '모뎀이나 LAN, 케이블, 무선 매체 등 통신 설비를 갖춘 컴퓨터로 서로 연결하는 조직이나 체계, 통신망'이다. 즉 통신 설비로 두 대 이상의 컴퓨터를 서로 연결한 것을 말한다. 조금 추상화 해보면 네트워크란 노드(Node)와 링크(Link)가 서로 연결되어 있으며 서로 정보나 데이터를 공유하는 집합을 말하는 것이다. 여기서 노드는 서버, 라우터, 스위치 등과 같은 네트워크 장치이고, 이들을 연결시키는 것은 유무선 링크이다. 그럼 컴퓨터들은 어떻게 정보나 데이터를 주고 받을까? 컴퓨터간 데이터를 주고 받을 때는 데이터를 패킷(Packet)단위로 쪼개서 주고 받는다. 큰 그림을 퍼즐조각처럼 쪼개서 옮기는 것처럼 용량이 큰 데이터들을 패킷으로 분할하여 전송한다. 만약 ..

[백준] 16118번 달빛 여우 - 파이썬

🔈 문제 관악산 기슭에는 보름달을 기다리는 달빛 여우가 한 마리 살고 있다. 달빛 여우가 보름달의 달빛을 받으면 아름다운 구미호로 변신할 수 있다. 하지만 보름달을 기다리는 건 달빛 여우뿐만이 아니다. 달빛을 받아서 멋진 늑대인간이 되고 싶어 하는 달빛 늑대도 한 마리 살고 있다. 관악산에는 1번부터 $ N $번까지의 번호가 붙은 $ N $개의 나무 그루터기가 있고, 그루터기들 사이에는 $ M $개의 오솔길이 나 있다. 오솔길은 어떤 방향으로든 지나갈 수 있으며, 어떤 두 그루터기 사이에 두 개 이상의 오솔길이 나 있는 경우는 없다. 달빛 여우와 달빛 늑대는 1번 나무 그루터기에서 살고 있다. 보름달이 뜨면 나무 그루터기들 중 하나가 달빛을 받아 밝게 빛나게 된다. 그러면 달빛 여우와 달빛 늑대는 먼저 ..

[백준] 13164번: 행복 유치원 - 자바

🔈 문제 행복 유치원 원장인 태양이는 어느 날 N명의 원생들을 키 순서대로 일렬로 줄 세우고, 총 K개의 조로 나누려고 한다. 각 조에는 원생이 적어도 한 명 있어야 하며, 같은 조에 속한 원생들은 서로 인접해 있어야 한다. 조별로 인원수가 같을 필요는 없다. 이렇게 나뉘어진 조들은 각자 단체 티셔츠를 맞추려고 한다. 조마다 티셔츠를 맞추는 비용은 조에서 가장 키가 큰 원생과 가장 키가 작은 원생의 키 차이만큼 든다. 최대한 비용을 아끼고 싶어 하는 태양이는 K개의 조에 대해 티셔츠 만드는 비용의 합을 최소로 하고 싶어한다. 태양이를 도와 최소의 비용을 구하자. 📝입력 입력의 첫 줄에는 유치원에 있는 원생의 수를 나타내는 자연수 N(1 ≤ N ≤ 300,000)과 나누려고 하는 조의 개수를 나타내는 자연..