전체 글 474

[Python/BOJ] 백준 14442 벽 부수고 이동하기2(BFS)-시간초과에서 삽질하다가 AC

https://www.acmicpc.net/problem/14442 14442번: 벽 부수고 이동하기 2 첫째 줄에 N(1 ≤ N ≤ 1,000), M(1 ≤ M ≤ 1,000), K(1 ≤ K ≤ 10)이 주어진다. 다음 N개의 줄에 M개의 숫자로 맵이 주어진다. (1, 1)과 (N, M)은 항상 0이라고 가정하자. www.acmicpc.net 앞서 벽 부수고 이동하기 를 풀었기에 이 문제를 풀 아이디어는 쉽게 얻을 수 있었다. 💡 방법 vis 배열을 3차원으로 만드는 것이 아니라 입력되는 k에 따라서 차원을 만드는 것이다. 그후 k번 벽을 뚫을 수 있으므로 뚫을 때마다 -1 씩 줄어들도록 코드를 만들었다. 코드는 나와있는 테케의 정답대로 잘 나왔고 제출하였다. 그러나 계속해서 시간초과가 발생하였다. ..

인텔리제이로 깃브렌치 만들어 연결하는법

먼저 깃허브에서 브랜치를 생성해줍니다. 깃 클론을 할 위치를 지정하여 cmd로 들어갑니다. git clone [깃허브 주소] cd [해당 파일] git remote add origin [깃허브 주소] 그 후 인텔리제이로 해당 파일을 open합니다. 인텔리제이의 우측 하단에서 방금 생성한 branch주로소 checkout해줍니다. 코드를 변경하여 커밋을 해야할 때 우측 상단의 초록색 체크 표시를 눌러줍니다. 좌측에 아래 사진과 같은 commit 창이 나옵니다. 커밋내용을 적은 후 원하는 버튼을 눌러줍니다.

UMC🚀 2022.01.13

(5)처음시작하는파이썬_[5장 모듈,패키지,프로그램]

모듈의 이용 def get_description() : from random import choice possible = ['rain','snow','sunny','fog','who knows'] return choice(possible) [메인 프로그램] import report description = report.get_description() print("Today is weather : ", description) python.py를 실행시키면 report 모듈을 찾아 get_description함수를 실행한다. report 모듈에서 get_description함수는 파이썬 표준 random 모듈로부터 choice함수를 임포트했다. 다른 이름으로 모듈을 임포트하고 싶다면 alias를 이용한다. ..

[Python/BOJ] 백준 2206 벽 부수고 이동하기(BFS)

https://www.acmicpc.net/problem/2206 2206번: 벽 부수고 이동하기 N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로 www.acmicpc.net 🐾 20221031 🖌 어떤 생각? 1. 벽을 부쉈는지 안부쉈는지를 저장한는 변수가 필요하겠구나 그래서 덱에 3개의 수가 들어있겠구나 2. 토마토와 달리 숫자가 띄어쓰기 없이 입력되는데 어떻게 리스트 형태로 잘 만들 수 있을까? 3. 그래서 bfs를 어떻게 만들어야하지?! 💡 어떻게 해결하지? 1. 방문여부를 확인하면서 거리를 저장하는 배열 vis를 만들 때 벽의 부서짐 ..

네이비씰 승리의 기술을 읽고 리더십에 대한 고찰

http://www.yes24.com/Product/Goods/77253590 네이비씰 승리의 기술 - YES24 100만 독자의 삶을 바꾼 최강의 멘탈 트레이닝『네이비씰 승리의 기술』은 세계 최강 특수 부대 네이비씰 출신 저자가 전쟁터에서 목숨 걸고 싸우며 얻은 승리의 기술을 열두 가지 원칙으로 정 www.yes24.com 고등학교 때나 대학교 1학년까지 나는 리더쉽이 모든 사람에게 필요한가 생각했다. 어차피 리더는 한명이고 그 리더에 사람들이 잘 따르면 되기에 많은 사람들은 따르는 것을 잘하면 세상이 더 원활하게 돌아가지않을까? 생각했다. 시간이 좀 지나고 리더를 잘 따르고, 가까이에서 본 사람이 리더를 잘할수있다는 말을 듣고 그래서 사람들이 리더쉽을 강조하는구나 이유를 알수있었다. 리더를 잘 따른다..

[Python/BOJ] 백준 7576 토마토(BFS)

https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 백준의 BFS 문제의 정석!!!! 🐾 20221024 💻 c++로는 여러번 풀었지만 파이썬으로는 처음 풀어본다. from collections import deque dx = [1,0,-1,0] dy = [0,1,0,-1] m,n = map(int, input().split()) arr = [list(map(int,input().split()))for _ in range(n)] q..

(4)처음시작하는 파이썬_[4장파이크러스트:코드구조]

라인 유지하기 : \ print('fjslfjsf\ fslljf') for문에서 튜플이나 리스트는 한 번에 한 항목을 순회하고, 문자열은 한 번에 한 문자를 순회한다. word = 'cat' for i in word : print(i) 딕셔너리의 순회는 키를 반환한다. 값을 하고 싶다면 values()를 이용, 키와 값 모두 반환하려면 items()를 이용한다. break문이 발생하지않으면 else : 가 실행된다. cheeses = ['mocha'] for cheese in cheeses : print('This shop has some lovely', cheese) break else : # break가 호출되지않으면 print('This is not much of a cheese shop') zip..