전체 글

전체 글

    (Python) 백준 15685번 : 드래곤 커브

    출처 : https://www.acmicpc.net/problem/15685 15685번: 드래곤 커브 첫째 줄에 드래곤 커브의 개수 N(1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 드래곤 커브의 정보가 주어진다. 드래곤 커브의 정보는 네 정수 x, y, d, g로 이루어져 있다. x와 y는 드래곤 커브의 시작 점, d는 시작 방향, g는 세대이다. (0 ≤ x, y ≤ 100, 0 ≤ d ≤ 3, 0 ≤ g ≤ 10) 입력으로 주어지는 드래곤 커브는 격자 밖으로 벗어나지 않는다. 드래곤 커브는 서로 겹칠 수 있다. 방향은 0, 1, 2, www.acmicpc.net (Python) 백준 15685번 : 드래곤 커브¶출처 : https://www.acmicpc.net/problem/156..

    (Python) 백준 1120번 : 문자열

    출처 : https://www.acmicpc.net/problem/1120 1120번: 문자열 길이가 N으로 같은 문자열 X와 Y가 있을 때, 두 문자열 X와 Y의 차이는 X[i] ≠ Y[i]인 i의 개수이다. 예를 들어, X=”jimin”, Y=”minji”이면, 둘의 차이는 4이다. 두 문자열 A와 B가 주어진다. 이때, A의 길이는 B의 길이보다 작거나 같다. 이제 A의 길이가 B의 길이와 같아질 때 까지 다음과 같은 연산을 할 수 있다. A의 앞에 아무 알파벳이나 추가한다. A의 뒤에 아무 알파벳이나 추가한다. 이때, A와 B의 길이가 같으 www.acmicpc.net (Python) 백준 1120번 : 문자열¶출처 : https://www.acmicpc.net/problem/1120 알고리즘 분..

    (Python) 백준 14890번 : 경사로

    출처 : https://www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net (Python) 백준 14890번 : 경사로¶출처 : https://www.acmicpc.net/problem/14890 알고리즘 분류 시뮬레이션 In [1]: def row_fc(x): # board 에서 특정 행,row(=x) array = set() # 경사로 업데이트 해줘야할 좌표들 모음 for y in range(N-1): ## 현재 원소와 그 다음 원소값이 동일 if board[x][y] == boa..

    (Python) 백준 2164번 : 카드2

    출처 : https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리 www.acmicpc.net (Python) 백준 2164번 : 카드2¶출처 : https://www.acmicpc.net/problem/2164 알고리즘 분..

    (Python) 백준 3055번 : 탈출

    출처 : https://www.acmicpc.net/problem/3055 3055번: 탈출 문제 사악한 암흑의 군주 이민혁은 드디어 마법 구슬을 손에 넣었고, 그 능력을 실험해보기 위해 근처의 티떱숲에 홍수를 일으키려고 한다. 이 숲에는 고슴도치가 한 마리 살고 있다. 고슴도치는 제일 친한 친구인 비버의 굴로 가능한 빨리 도망가 홍수를 피하려고 한다. 티떱숲의 지도는 R행 C열로 이루어져 있다. 비어있는 곳은 '.'로 표시되어 있고, 물이 차있는 지역은 '*', 돌은 'X'로 표시되어 있다. 비버의 굴은 'D'로, 고슴도치의 위치는 'S'로 나 www.acmicpc.net (Python) 백준 1055번 : 탈출¶출처 : https://www.acmicpc.net/problem/3055 알고리즘 분류 ..

    (Python) 백준 6087번 : 레이저 통신

    출처 : https://www.acmicpc.net/problem/6087 6087번: 레이저 통신 문제 크기가 1×1인 정사각형으로 나누어진 W×H 크기의 지도가 있다. 지도의 각 칸은 빈 칸이거나 벽이며, 두 칸은 'C'로 표시되어 있는 칸이다. 'C'로 표시되어 있는 두 칸을 레이저로 통신하기 위해서 설치해야 하는 거울 개수의 최솟값을 구하는 프로그램을 작성하시오. 레이저로 통신한다는 것은 두 칸을 레이저로 연결할 수 있음을 의미한다. 레이저는 C에서만 발사할 수 있고, 빈 칸에 거울('/', '\')을 설치해서 방향을 90도 회전시킬 수 있다. www.acmicpc.net (Python) 백준 6087번 : 레이저 통신¶출처 : https://www.acmicpc.net/problem/6087 알..

    티스토리 이미지에 테두리 입히는법

    나는 티스토리 기본 스킨을 사용하고 있기 때문에 다른 스킨들은 경우에 따라 다른 위치에 있을 수도 있겠지만 imageblock img { } 부분에 border:1px solid; 를 추가해주었더니 이미지에 테두리가 생기더라. 블로그 관리자 페이지 -> 꾸미기의 스킨편집 -> html 편집 선택 -> CSS에서 imageblock를 찾아서 border:1px solid; 추가한다. 원래는 위의 content에서 이미지부분에 테두리가 없었지만, 설정을 마치고 나서 확인해보니 테두리가 생겼다.

    웹페이지 전체 스크린샷(screenshot)

    평소에는 기본 캡처 도구를 이용해서 특정 부분을 캡쳐하는 방식을 선호했었다. 하지만 이 방법도 한계가 있어서 웹 페이지 전체 부분을 정확하게 가져올 수 있는 방법을 알아봤다. 1. F12 를 누른다. 오른쪽에 새로운 창이 생기는 것을 볼 수 있다. 2. Ctrl + Shift + P 입력창이 생긴다. 3. 입력창에 'screenshot' 입력 screenshot을 입력하면 아래 4종류의 screenshot을 볼 수 있다. 이 중에서 'Capture full size screenshot'을 선택한다. (마우스 좌클릭) 4. 전체 웹페이지 창이 다운로드되고, 아래처럼 확인 가능하다.

    (Python) 백준 1547번 : 공

    출처 : https://www.acmicpc.net/problem/1547 1547번: 공 첫째 줄에 컵의 위치를 바꾼 횟수 M이 주어지며, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 컵의 위치를 바꾼 방법 X와 Y가 주어지며, X번 컵과 Y번 컵의 위치를 서로 바꾸는 것을 의미한다. 컵을 이동시키는 중에 공이 컵에서 빠져나오는 경우는 없다. X와 Y의 값은 3보다 작거나 같고, X와 Y가 같을 수도 있다. www.acmicpc.net (Python) 백준 1547번 : 공¶출처 : https://www.acmicpc.net/problem/1547 알고리즘 분류 시뮬레이션 In [1]: if __name__=='__main__': ## 컵 위치 정보를 담고 있는 딕셔..

    (Python) 백준 15683번 : 감시

    출처 : https://www.acmicpc.net/problem/15683 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감시할 수 있는 방법은 다음과 같다. 1번 CCTV는 한 쪽 방향만 감시할 수 있다. 2번과 3번은 두 방향을 감시할 수 있는데, 2번은 감시하는 방향이 서로 반대방향이어야 하고, 3번은 직각 방향이어야 한다. 4번은 세 방향, 5번은 네 방향을 감시할 www.acmicpc.net 아래 코드는 맨 처음에 썼던 알고리즘인데 (순위권 코드를 이해하고나서 처음부터 안보고 쭉 코딩한것도 있는데 그 코드는 맨 아래에 ..

    (Python) 백준 14889번 : 스타트와 링크

    출처 : https://www.acmicpc.net/problem/14889 14889번: 스타트와 링크 예제 2의 경우에 (1, 3, 6), (2, 4, 5)로 팀을 나누면 되고, 예제 3의 경우에는 (1, 2, 4, 5), (3, 6, 7, 8)로 팀을 나누면 된다. www.acmicpc.net (Python) 백준 14889번 : 스타트와 링크¶출처 : https://www.acmicpc.net/problem/14889 알고리즘 분류 브루트 포스 In [1]: from itertools import combinations from collections import deque import sys In [2]: ## 팀의 능력치 합을 구한다. def ability(x_team, S): n = len(x..

    (Python) 백준 14891번 : 톱니바퀴

    출처 : https://www.acmicpc.net/problem/14891 14891번: 톱니바퀴 총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴가 1번, 그 오른쪽은 2번, 그 오른쪽은 3번, 가장 오른쪽 톱니바퀴는 4번이다. 이때, 톱니바퀴를 총 K번 회전시키려고 한다. 톱니바퀴의 회전은 한 칸을 기준으로 한다. 회전은 시계 방향과 반시계 방향이 있고, 아래 그림과 같이 회전한다. 톱니바퀴를 회전시키려 www.acmicpc.net (Python) 백준 14891번 : 톱니바퀴¶출처 : https://www.acmicpc.net/problem/14891 ..

    (Python) 백준 5397번 : 키로거

    출처 : https://www.acmicpc.net/problem/5397 5397번: 키로거 문제 창영이는 강산이의 비밀번호를 훔치기 위해서 강산이가 사용하는 컴퓨터에 키로거를 설치했다. 며칠을 기다린 끝에 창영이는 강산이가 비밀번호 창에 입력하는 글자를 얻어냈다. 키로거는 사용자가 키보드를 누른 명령을 모두 기록한다. 따라서, 강산이가 비밀번호를 입력할 때, 화살표나 백스페이스를 입력해도 정확한 비밀번호를 알아낼 수 있다. 강산이가 비밀번호 창에서 입력한 키가 주어졌을 때, 강산이의 비밀번호를 알아내는 프로그램을 작성하시오. 입력 첫째 줄에 테 www.acmicpc.net (Python) 백준 5397번 : 키로거¶출처 : https://www.acmicpc.net/problem/5397 문제 해결에..

    (Python) 백준 1057번 : 토너먼트

    출처 : https://www.acmicpc.net/problem/1057 1057번: 토너먼트 김지민은 N명이 참가하는 스타 토너먼트에 진출했다. 토너먼트는 다음과 같이 진행된다. 일단 N명의 참가자는 번호가 1번부터 N번까지 배정받는다. 그러고 난 후에 서로 인접한 번호끼리 스타를 한다. 이긴 사람은 다음 라운드에 진출하고, 진 사람은 그 라운드에서 떨어진다. 만약 그 라운드의 참가자가 홀수명이라면, 마지막 번호를 가진 참가자는 다음 라운드로 자동 진출한다. 다음 라운드에선 다시 참가자의 번호를 1번부터 매긴다. 이때, 번호를 매기는 순서는 처음 www.acmicpc.net (Python) 백준 1057번 : 토너먼트¶ 출처 : https://www.acmicpc.net/problem/1057 알고리..

    (Python) 백준 1021번 : 회전하는 큐

    출처 : https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 순서대로 주어진다. 위치는 1보다 크거나 같고, N보다 작거나 같은 자연수이다. www.acmicpc.net (Python) 백준 1021번 : 회전하는 큐¶ 알고리즘 분류 시뮬레이션 출처 : https://www.acmicpc.net/problem/1021 In [1]: # N:큐의 크기 M:뽑아내려고 하는 수의 개수 N,M = map(int, input().split()) # M_array: 뽑으려고 하는 원..