python 15

[백준/파이썬] 2644번: 촌수계산

정말 오랜만에 블로그에 다시 돌아왔네요! 문제풀이도 쉽지 않고 해서 꾸준히 풀이 글을 적어가면서 오답노트도 하고, 재미도 다시 붙여보려 해요! -문제 https://www.acmicpc.net/problem/2644 2644번: 촌수계산 사람들은 1, 2, 3, …, n (1 ≤ n ≤ 100)의 연속된 번호로 각각 표시된다. 입력 파일의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야 하는 서로 다른 두 사람의 번호가 주어 www.acmicpc.net 촌수 계산 문제입니다! - 내 풀이 문제 이름만 들어봐도 트리 연결 구조를 분석해야 하겠다는 생각이 드는데요. 저는 트리가 익숙하지도 않고 해서 리스트 활용한 간단 연산으로 풀었어요. a, b의 촌수를 구한다고 하면 결국은 둘을 ..

[프로젝트] 전역일 계산기 진행 상황 Part 1

https://culgg2mm.tistory.com/m/5 이 피드를 올리고나서 다시 돌아온~ GG2Mm입니다! 저번주에 전역일 계산기를 만들어보게다는 계획을 올리고도 한 주가 지났네요. 아무래도 처음으로 진행하는 저만의 소심한 프로젝트이기도 해서 시작을 하는데 주저하기도 했었고, 백준 문제를 푸느라 프로젝트에는 많은 집중을 기울이지 못했어요. 그러다 오늘 잠깐 틈이 나서 이렇게 조금 만들어 봤어요! 전역일 계산기의 용도, 사용 목적 전역일 계산기는 말 그대로, 현재 병사가 모은 휴가 일 수를 토대로 전역 전 휴가를 출발할 수 있는 날을 알려주는 프로그램입니다! 군인이라면 다들 공감하겠지만, 언제 집을 갈 것인가는 굉장히 중요한 이슈에요. 그래서 저는 이 프로그램을 제 친구들, 동기들, 선임들 모두가 이..

프로젝트 2022.08.13

[프로젝트] 전역일 계산기 - 계획

백준 문제를 이렇게 저렇게 날을 보내던 '군인'인 저는 사무실에서 일이 좀 적을 때에면 제가 모은 휴가를 종합하고는 해요. 그래서 제 컴퓨터의 한켠에는 제가 몇월에 어떠한 명목으로 휴가를 받았는지 기록해놓은 엑셀 파일이 있어요. 엑셀 함수를 이용해서 잘 정리한다고는 해놨는데, 역시 새로운 데이터를 대입할 때에마다 함수를 다시 작성해야하는게 불편하더라고요. 그래서 제가 이제껏 모은 휴가, 나가서 없어진 휴가, 내가 나가게 될 전역 예정일을 텍스트 파일로 인쇄해주는 프로그램을 만들고자 해요. -기능 첫번째 : 먼저 처음에는 프로그램을 통해, 제가 원하는 제목이 담긴 파일을 생성할 수 있어야 해요. 아마 저는 'Leaving Day of GG2Mm.txt'라는 이름의 파일을 생성할 거 같네요. 또 여기에 입대..

프로젝트 2022.08.05

[백준/파이썬] 1051번(숫자 정사각형) ft. 중첩 반복문 탈출, 함수에 리스트 전달

또 다시 돌아온 백준 문제 풀이네요! 저는 보통 solved.ac 사이트에서 랭크별로 문제를 푸는데, 실버 4번에서 흥미 돋는 제목이 있어 풀어봤어요! 문제를 풀다가 느낀 저만의 포인트를 가지고 간단한 개념도 짚고 넘어갈거에요! -문제 https://www.acmicpc.net/problem/1051 1051번: 숫자 정사각형 N×M크기의 직사각형이 있다. 각 칸에는 한 자리 숫자가 적혀 있다. 이 직사각형에서 꼭짓점에 쓰여 있는 수가 모두 같은 가장 큰 정사각형을 찾는 프로그램을 작성하시오. 이때, 정사각형은 행 www.acmicpc.net 이번 문제도 마찬가지로 두 개의 풀이 방법을 생각해보았어요. 채점 기준에서 이상은 없었지만 혼자 문제를 풀이하는 동안 조금 더 효율적인 프로그램을 만들 방법을 생각..

[백준/파이썬] 11653번(소인수분해 풀이)

역시나 첫 포스트는 백준 문제 풀이가 되었군요! 간단한 문제였으나, 제 경우 시간 초과 오류가 나서 풀이를 개선하느라 굉장히 풀고 나서 뿌듯했던 문제입니다! -문제 https://www.acmicpc.net/problem/11653 11653번: 소인수분해 첫째 줄에 정수 N (1 ≤ N ≤ 10,000,000)이 주어진다. www.acmicpc.net -소스코드(시간 초과 오류 개선 전) import math num = int(input()) T = [] SS = [2] for i in range(3, num): Yaksu = [] for j in range(1, len(SS)+1 ): if i % SS[j-1] == 0: Yaksu.append(SS[j-1]) if len(Yaksu) == 0: SS..