취준생 (24) 썸네일형 리스트형 [서로소 집합] 난이도2, 핵심 유형 '팀 결성' (Python) 학교에서 학생들에게 0번부터 N번까지의 번호를 부여했다. 처음에는 모든 학생이 서로 다른 팀으로 구분되어, 총 N+1개의 팀이 존재한다. 이때 선생님은 '팀 합치기' 연산과 '같은 팀 여부 확인' 연산을 사용할 수 있다. 1. '팀 합치기' 연산은 두 팀을 합치는 연산이다. 2. '같은 팀 여부 확인' 연산은 특정한 두 학생이 같은 팀에 속하는지를 확인하는 연산이다. 선생님이 M개의 연산을 수행할 수 있을 때, '같은 팀 여부 확인' 연산에 대한 연산 결과를 출력하는 프로그램을 작성하시오. 첫째 줄에 N,M이 주어진다. M은 입력으로 주어지는 연산의 개수이다. (1 개발자 면접 질문 예시 Q. 개발적으로 어떤 사고가 났는데 이 사고를 면접관이 개발을 모르는 상황이라 가정하고 설명을 해달라! ==> 자기만의 기술 용어 사전을 없애라. ==> 다른 직군의 사람들과 소통을 많이 해라. Q. 블로그 글을 통해 어떤 경험을 했는지 파악하고 경험에서 어떤 부분을 문제로 인지했는지 ==> 특정한 문제를 접했을 때 해결하기 위해서 어떤 노력을 하시는지, 블로그 내용이 사실인지 파악하기 위한 질문 Q. 만약 무제한의 자원이 주어진다면 당사에서 무슨 일을 해보고 싶은가요? ==> 회사는 자아실현을 하는 공간이 아니라 비즈니스를 만들어내고 비즈니스에서 가치를 만들어내는 곳. ==> 비즈니스에 대한 이해 필요 ==> 비즈니스를 기술적으로 플어낼 수 있는 사람 Q. 지원자가 문제 해결 경험을 말하는 상황에서,,.. [BFS/DFS] 백준 14888번 '연산자 끼워넣기' (Python) https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, www.acmicpc.net 1. 연산을 할 함수를 만든다. 2. 입력값 수만큼 각 연산으로 바꾸고 조합을 만든다. 3. 1번에서 만든 함수를 반복하여 최댓값, 최솟값을 찾는다. #220328 from itertools import permutations def op(a,b,opp): if opp=='+': return a+b elif opp=='-': return a-.. [구현] 백준 3190번 '뱀' (Python) https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 1. 사과 있는 곳은 1로 표시 2. 방향 지정 함수 만들기 3. q를 사용하여 뱀의 위치 저장. 사과가 없을 때 가장 왼쪽 좌표 제거하면 도미 4. 벽이나 뱀의 몸통과 부딪혔다면 종료 n = int(input()) k = int(input()) data = [[0]*(n+1) for _ in range(n+1)] info = [] for _ in range(k): a,b = map(int,input().. [구현] 난이도2, 이취코 118p '게임 개발' (Python) 현민이는 게임 캐릭터가 맵 안에서 움직이는 시스템을 개발 중이다. 캐릭터가 있는 장소는 1x1 크기의 정사각형으로 이뤄진 NxM 크기의 직사각형으로, 각각의 칸은 육지 또는 바다이다. 캐릭터는 동서남북 중 한 곳을 바라본다. 맵의 각 칸은 (A,B)로 나타낼 수 있고, A는 북쪽으로부터 떨어진 칸의 개수, B는 서쪽으로부터 떨어진 칸의 개수이다. 캐릭터는 상하좌우로 움직일 수 있고, 바다로 되어 있는 공간에는 갈 수 없다. 캐릭터의 움직임을 설정하기 위해 정해 놓은 매뉴얼은 이러하다. 1. 현재 위치에서 현재 방향을 기준으로 왼쪽 방향(반시계 방향으로 90도 회전한 방향)부터 차례대로 갈 곳을 정한다. 2. 캐릭터의 바로 왼쪽 방향에 아직 가보지 않은 칸이 존재한다면, 왼쪽 방향으로 회전한 다음 왼쪽으로.. [DFS] 릿코드 200 Medium 'Number of Islands' (Python) https://leetcode.com/problems/number-of-islands/ Number of Islands - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 1. 상하좌우로 1이 연결되어 있으면 하나의 섬이라고 본다. 2. DFS 알고리즘으로 해결한다. class Solution: def numIslands(self, grid: List[List[str]]) -> int: answer = 0 q = [] dx = [0,0,-1,1] dy = [-1,.. [비트연산] 릿코드 Easy 190 'Reverse Bits' (Python) https://leetcode.com/problems/reverse-bits/ Reverse Bits - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com n은 정수형으로 들어오기 때문에 binary로 바꿔줌. binary로 바꾸면 맨 앞에 0b가 붙으므로 제거해줌 2진수는 32bit의 길이를 유지해야하므로 zfill함수를 이용해 맨 앞에 0을 붙여줌 1을 가진 자리는 2의 지수만큼 곱해줌 class Solution: def reverseBits(self, n: i.. [BFS] 릿코드 Medium 695 'Max Area of Island' (Python) https://leetcode.com/problems/max-area-of-island/ Max Area of Island - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 상하좌우로 1이 연결된 면적 구하기 최대 면적 구하기 class Solution: def maxAreaOfIsland(self, grid: List[List[int]]) -> int: tmp = 0 answer = 0 dx = [-1,0,1,0] dy = [0,-1,0,1] for x in .. 이전 1 2 3 다음