백준 16236번: 아기상어 (실패)
from collections import deque n=int(input()) field=[] for i in range(n): field.append(list(map(int,input().split()))) for i in range(n): for j in range(n): if field[i][j]==9: baby_shark=(i,j,2) #좌표와 크기 visited=[[0]*n for i in range(n)] dx=[-1,0,0,1] dy=[0,-1,1,0] def bfs(): global visited exp=0 queue=deque() queue.append(baby_shark) x1,y1,z=baby_shark visited[x1][y1]=1 #방문표시 time=0 while queue: ..
2022. 7. 25.
백준 2470번: 두 용액
https://www.acmicpc.net/problem/2470 2470번: 두 용액 첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 수들은 모두 -1,000,000,000 이상 1,000,00 www.acmicpc.net 문제 KOI 부설 과학연구소에서는 많은 종류의 산성 용액과 알칼리성 용액을 보유하고 있다. 각 용액에는 그 용액의 특성을 나타내는 하나의 정수가 주어져있다. 산성 용액의 특성값은 1부터 1,000,000,000까지의 양의 정수로 나타내고, 알칼리성 용액의 특성값은 -1부터 -1,000,000,000까지의 음의 정수로 나타낸다. 같은 양의 두 용액을 혼합한 용액의 ..
2022. 7. 21.
백준 9095번: 1,2,3 더하기
https://www.acmicpc.net/problem/9095 9095번: 1, 2, 3 더하기 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. www.acmicpc.net 문제 정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 1+1+1+1 1+1+2 1+2+1 2+1+1 2+2 1+3 3+1 정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오. 숫자 n을 1,2,3으로 만들기 위해서 1+(n-1) 2+(n-2) 3+(n-3) 을 할 수 있다. t=int(input()) d=[0]*11 d[1]=1 #1 d[2]=2 #1+1, 2 d[3]=4 ..
2022. 7. 21.
백준 1920번: 수 찾기
https://www.acmicpc.net/problem/1920 1920번: 수 찾기 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들 www.acmicpc.net 문제 N개의 정수 A[1], A[2], …, A[N]이 주어져 있을 때, 이 안에 X라는 정수가 존재하는지 알아내는 프로그램을 작성하시오. 입력 첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에..
2022. 7. 20.
정렬 알고리즘: 삽입 정렬
시간복잡도는 O(N^2) 정도.. 처리되지 않은 데이터를 하나씩 집어서.. 왼쪽으로 한 칸씩 이동하며 알맞은 위치에 삽입시키는거라고 보면 될듯. array = [7,5,9,0,3,1,6,2,4,8] for i in range(1,len(array)): for j in range(i,0,-1): if array[j]
2022. 7. 15.