분류 전체보기(619)
-
백준 온라인 저지, 자료구조/180번: 부분합 (파이썬 / 백준 골드문제)
문제https://www.acmicpc.net/problem/1806 문제 정의10,000 이하의 자연수로 이루어진 길이 N짜리 수열이 주어진다. 이 수열에서 연속된 수들의 부분합 중에 그 합이 S 이상이 되는 것 중, 가장 짧은 것의 길이를 구하는 프로그램을 작성하시오. 입력첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. 출력첫째 줄에 구하고자 하는 최소의 길이를 출력한다. 만일 그러한 합을 만드는 것이 불가능하다면 0을 출력하면 된다. 예제 입력 110 15 5 1 3 5 10 7 4 9 2 8 예제 출력 12 접근 방법1. 접근 방법 2..
2021.08.29 -
백준 온라인 저지, 자료구조/1202번: 보석도둑 (파이썬 / 백준 골드문제)
문제 https://www.acmicpc.net/problem/1202 문제 정의 세계적인 도둑 상덕이는 보석점을 털기로 결심했다. 상덕이가 털 보석점에는 보석이 총 N개 있다. 각 보석은 무게 Mi와 가격 Vi를 가지고 있다. 상덕이는 가방을 K개 가지고 있고, 각 가방에 담을 수 있는 최대 무게는 Ci이다. 가방에는 최대 한 개의 보석만 넣을 수 있다. 상덕이가 훔칠 수 있는 보석의 최대 가격을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci ≤ 100,000,..
2021.08.29 -
웹파이썬 프로그래밍 - 모듈(Module)
1. 모듈(Module) - 여러 함수와 변수를 함께 가지고 있는 오브젝트(Object)의 일종으로 하나의 파일에 특정한 함수와 변수를 가지고 있는 것을 모듈이라 부른다. - 협업에 용이하게 하기 위해 자주쓰고 유용한 특정한 목적의 함수와 변수의 모음을 모듈을 통해 만들고 관리한다. - 대표적인 모듈: math, sys 1-1. 모듈 불러오기(import) - import를 사용해 모듈을 불러올 수 있다. - 단, 같은 디렉토리 내에 있어야지 모듈을 불러올 수 있다. # 모듈 불러오기 import math print(type(math)) # >>> 1-2. 모듈 함수 사용 - (모듈.모듈함수)의 형태로 사용이 가능하다. - 모듈의 이름을 쓰지 않는 모듈내에 있는 함수를 사용할 수 없다. * 만약 모듈이름..
2021.07.21 -
백준 온라인 저지, 구현/15683번: 감시 ( 파이썬 / 백준 골드문제, 삼성 SW 기출 문제)
문제 https://www.acmicpc.net/problem/15683 문제 정의 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감시할 수 있는 방법은 다음과 같다. CCTV는 감시할 수 있는 방향에 있는 칸 전체를 감시할 수 있다. 사무실에는 벽이 있는데, CCTV는 벽을 통과할 수 없다. CCTV가 감시할 수 없는 영역은 사각지대라고 한다.1번 CCTV는 한 쪽 방향만 감시할 수 있다. 2번과 3번은 두 방향을 감시할 수 있는데, 2번은 감시하는 방향이 서로 반대방향이어야 하고, 3번은 직각 방향이어야 한다. 4번은 세 방향, 5번은 네 방향을..
2021.07.20 -
백준 온라인 저지, 구현/12100번: 2048(easy)(파이썬 / 백준 골드문제)
문제 https://www.acmicpc.net/problem/12100 문제 정의 2048 게임은 4×4 크기의 보드에서 혼자 즐기는 재미있는 게임이다. 이 링크를 누르면 게임을 해볼 수 있다. 이 게임에서 한 번의 이동은 보드 위에 있는 전체 블록을 상하좌우 네 방향 중 하나로 이동시키는 것이다. 이때, 같은 값을 갖는 두 블록이 충돌하면 두 블록은 하나로 합쳐지게 된다. 한 번의 이동에서 이미 합쳐진 블록은 또 다른 블록과 다시 합쳐질 수 없다. (실제 게임에서는 이동을 한 번 할 때마다 블록이 추가되지만, 이 문제에서 블록이 추가되는 경우는 없다) 이 문제에서 다루는 2048 게임은 보드의 크기가 N×N 이다. 보드의 크기와 보드판의 블록 상태가 주어졌을 때, 최대 5번 이동해서 만들 수 있는 가..
2021.07.20 -
백준 온라인 저지, 이진 탐색/1072번: 게임(파이썬)
문제 https://www.acmicpc.net/problem/1072 문제 정의 김형택은 지금 몰래 Spider Solitaire(스파이더 카드놀이)를 하고 있다. 형택이는 이 게임을 이길 때도 있었지만, 질 때도 있었다. 누군가의 시선이 느껴진 형택이는 게임을 중단하고 코딩을 하기 시작했다. 의심을 피했다고 생각한 형택이는 다시 게임을 켰다. 그 때 형택이는 잠시 코딩을 하는 사이에 자신의 게임 실력이 눈에 띄게 향상된 것을 알았다. 이제 형택이는 앞으로의 모든 게임에서 지지 않는다. 하지만, 형택이는 게임 기록을 삭제 할 수 없기 때문에, 자신의 못하던 예전 기록이 현재 자신의 엄청난 실력을 증명하지 못한다고 생각했다. 게임 기록은 다음과 같이 생겼다. 게임 횟수 : X 이긴 게임 : Y (Z%) ..
2021.07.16