Koala - 7기

문제 https://www.acmicpc.net/problem/1926 1926번: 그림 어떤 큰 도화지에 그림이 그려져 있을 때, 그 그림의 개수와, 그 그림 중 넓이가 가장 넓은 것의 넓이를 출력하여라. 단, 그림이라는 것은 1로 연결된 것을 한 그림이라고 정의하자. 가로나 세로 www.acmicpc.net 코드 def flood_fill(): global val check[i][j]=val q.append((i,j)) while q: x,y=q.popleft() for k in range(4): nx,ny=x+dx[k],y+dy[k] if 0
1. 문제 2. 풀이 코드 a,b=input().split("(^0^)") a_cnt=a.count('@') b_cnt=b.count('@') print(a_cnt,b_cnt) 3. 해설 -^0^을 기준으로 앞과 뒤의 잔상 수를 묻는 문제이다. - count()함수를 이용하여 @의 개수를 세어준다 !
https://www.acmicpc.net/problem/13565 13565번: 침투 첫째 줄에는 격자의 크기를 나타내는 M (2 ≤ M ≤ 1,000) 과 N (2 ≤ N ≤ 1,000) 이 주어진다. M줄에 걸쳐서, N개의 0 또는 1 이 공백 없이 주어진다. 0은 전류가 잘 통하는 흰색, 1은 전류가 통하지 않 www.acmicpc.net 전형적인 bfs 문제풀이 방식으로 해결 가능하다. 다만 특징은, 첫번째 행에서 시작한 것이 마지막 행까지 도착하는 지를 체크해야한다. 다른 행에서 시작하는 것은 의미가 없다. bfs 문제라는 것을 파악 후, 생각없이 전형적인 bfs코드를 거의 다 썼을 때쯤 잘못된 것을 깨달았다. 보통의 문제라면 어느 행이든 상관없이 bfs 탐색을 시작해주면 됐는데, 이 문제는 ..
1110번: 더하기 사이클 (acmicpc.net) 1110번: 더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, www.acmicpc.net 문제분석 분류 수학 구현 문제설명 입력 출력 소스코드
https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net 소스코드 문제풀이 백트래킹 문제의 대표적인 문제라고 한다. 혼자 그림을 그려서 생각해보면 아 이런식으로 풀어야겠구나 라는 생각은 금방 들지만 재귀를 이용해서 구현하기 어려웠다.(백트래킹 문제는 많이 풀어보는 수밖에 없는거같다) 한 곳에 뒀을 때 퀸을 둘 수 있는 곳에만 두는 식으로 점점 숫자를 늘려가며, 어느 곳에도 퀸을 둘 수 없으면 이 곳에 두면 안된다고 체크하고 되돌려놓는 형태로 풀면 된다. (N과 M 풀때..
문제 https://www.acmicpc.net/problem/11383 11383번: 뚊 입력의 첫 번째 줄에 N, M (1 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄의 각 줄에는 M개의 문자가 주어진다. 다음 N개의 줄의 각 줄에는 2M개의 문자가 주어진다. 모든 문자는 영문 알파벳 대문자 혹 www.acmicpc.net 코드 풀이 N번동안 문자를 입력받고 M번동안 새로운 리스트에 두번 넣어서 늘린 문자와 똑같은 문자가 되게 만든다. if문을 사용하여 늘린 문자와 입력받은 문자가 같지 않을 경우 flag를 걸어서 확인한다.
https://www.acmicpc.net/problem/15351 15351번: 인생 점수 어떤 사람이 무엇을 즐기느냐에 따라 그 사람의 인생 점수를 측정할 수 있다. A를 1점, B를 2점, ... , Z를 26점으로 해, 즐기는 것의 이름의 알파벳 점수를 모두 더하면 된다. 예를 들어, "OTAKU LIFE" 는 www.acmicpc.net 문제분석 입력하는 문자열을 알파벳 순서대로 점수로 환산해 최종 합을 출력한다. 소스코드 n=int(input()) for i in range(n): a=input() score=0 for j in a: if j == " ": continue else: a_score=ord(j)-64 score+=a_score if score==100: print('PERFECT..
백준 13424 비밀 모임 Intro Solution 다익스트라 알고리즘을 알고 있다면 쉽게 풀 수 있다. 다익스트라 알고리즘을 이용해 모든 친구들의 이동 비용을 구하여 저장한다. N은 최대 100이므로 K * N은 최대 10000, 친구들의 이동 비용의 합을 도착지마다 구하여 비교하여도 시간 제한을 통과할 수 있다. Code import sys, heapq input = sys.stdin.readline def dijkstra(n, graph, start): cost = [float('inf')] * (n+1) cost[start] = 0 hq = [(cost[start], start)] while hq: t, x = heapq.heappop(hq) if cost[x] != t: continue for..
문제 풀이 일단 이 문제를 보면 저 같은 경우에 초가 아닌 분으로 계산하여 풀 경우를 생각해 보았습니다 그래서 초는 3600을 곱하여 푸는 경우보다는 일단 입력한 T값을 60으로 나누고 그걸 입력한 b값에 넣은 다음 a에 T를 60으로 나눈 몫을 더해줍니다. 그리고 나머지는 b에 저장하고 그리고 a가 24시간이 넘을 경우에는 뺴기 24를 해준 다음 a값에 저장하면 끝납니다. 문제 코드 a,b=map(int,input().split()) T=int(input()) b+=T if b>=60:a+=(b//60);b=b%60 if a>=24:a=a-24 print(a,b)
https://www.acmicpc.net/problem/8989 8989번: 시계 기원이의 방에는 시침과 분침으로 이루어진 아날로그 시계가 있다. 기원이는 시침과 분침이 형성하는 각도 중 작은 각도를 측정하는 것이 취미이며, 이 각도는 0보다 크거나 같고 180보다 작거나 www.acmicpc.net 5개의 시간(시계)을 입력받고, 시계의 시침과 분침이 이루는 각도 (두 각도 중 작은 각도)를 구해서 오름차순으로 나열한다. 5개 중 가운데(3번째) 위치하는 시간을 찾는 문제이다. 시침과 분침이 가리키는 각도를 계산하는 문제라고 할 수 있다. 코드가 많이 지저분하지만, 리뷰도 할겸 최초 제출 코드로 올려본다. 분침이 가리키는 각도는 그 숫자에 비례하기 때문에 쉽게 생각할 수 있고, 시침은 분과 연계해서..
https://www.acmicpc.net/problem/13424 13424번: 비밀 모임 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에 테스트 케이스의 개수를 나타내는 자연수 T가 주어진다. 각 테스트 케이스의 첫째 줄에는 방 www.acmicpc.net 문제분석 분류 그래프 이론, 다익스트라, 플로이드-워셜 문제설명 N개의 방, M개의 비밀통로, K명의 친구들 모임에 참여하는 친구들은 N개의 방 중에서 한 군데씩에 각각 위치해있다. 이들은 항상 처음 위치에서 모임 장소까지의 이동 거리가 가장 짧은 경로만을 이용한다. 모임에 참석하는 친구들의 이동 거리의 총합이 최소가 되는 방을 오늘의 모임 장소로 사용한다. 친구들의 이동 거리의 총합이 최소가 되..
https://www.acmicpc.net/problem/13549 13549번: 숨바꼭질 3 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 문제분석 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 N에 있고, 동생은 K에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 때 걷는다면 1초 후에 X-1 또는 X+1로 이동하게 된다. 순간이동을 하는 경우에는 0초 후에 2*X의 위치로 이동하게 된다. 수빈이와 동생의 위치가 주어졌을 때, 수빈이가 동생을 찾을 수 있는 가장..
KauKoala
'Koala - 7기' 카테고리의 글 목록