전체 글
백준 2477. 참외밭 (파이썬)
참외와의 처절한 사투... 후... 아이디어 시도1. 큰 사각형에서 작은 사각형을 빼자 => 예시만 보고 max, min으로 접근했다가 Fail 시도2. 가장 긴 가로와 세로가 연달아 나오고 다음 다음 값과 그 다음 값을 찾자..>! ==> 구글링과 반 동기들의 도움을 받았다 ㅎ 초반 코드 도움 후 코드 K = int(input()) direction_cnt = [0] * 5 sides = [] for _ in range(6): d, l = map(int, input().split()) for idx in range(1, 6): if idx == d: direction_cnt[idx] += 1 sides.append([d, l]) # 가장 큰 사각형 구하기 wh = [] for i in range(1, ..
SWEA 1974. 스도쿠 검증 (파이썬)
문제 제약 사항 1. 퍼즐은 모두 숫자로 채워진 상태로 주어진다. 2. 입력으로 주어지는 퍼즐의 모든 숫자는 1 이상 9 이하의 정수이다. 입력 입력은 첫 줄에 총 테스트 케이스의 개수 T가 온다. 다음 줄부터 각 테스트 케이스가 주어진다. 테스트 케이스는 9 x 9 크기의 퍼즐의 데이터이다. 출력 테스트 케이스 t에 대한 결과는 “#t”을 찍고, 한 칸 띄고, 정답을 출력한다. (t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.) 문제에 대한 모든 권리는 SW Expert Academy에게 있습니다 아이디어 랄 건 없다... 그냥 가로, 세로, 3*3 각각 확인해주면 된다. ㅎㅎ 대신 세로를 확인할 때에는 굳이 어렵게 행을 바꿔가며 세지 않고, 가로와 세로를 뒤바꾼 전치행렬을 만들어서 처리했다. ..
SWEA 1208. Flatten (파이썬)
문제 한 쪽 벽면에 다음과 같이 노란색 상자들이 쌓여 있다. 높은 곳의 상자를 낮은 곳에 옮기는 방식으로 최고점과 최저점의 간격을 줄이는 작업을 평탄화라고 한다. 평탄화를 모두 수행하고 나면, 가장 높은 곳과 가장 낮은 곳의 차이가 최대 1 이내가 된다. 평탄화 작업을 위해서 상자를 옮기는 작업 횟수에 제한이 걸려있을 때, 제한된 횟수만큼 옮기는 작업을 한 후 최고점과 최저점의 차이를 반환하는 프로그램을 작성하시오. (출제 사이트로 가서 이미지 설명을 참고하세요) 제약 사항 가로 길이는 항상 100으로 주어진다. 모든 위치에서 상자의 높이는 1이상 100이하로 주어진다. 덤프 횟수는 1이상 1000이하로 주어진다. 주어진 덤프 횟수 이내에 평탄화가 완료되면 더 이상 덤프를 수행할 수 없으므로 그 때의 최..
백준 10163. 색종이 (파이썬/ 47, 52점 해결법)
문제 입력 출력 입력에서 주어진 순서에 따라 N장의 색종이를 평면에 놓았을 때, 입력에서 주어진 순서대로 각 색종이가 보이는 부분의 면적을 한 줄에 하나씩 하나의 정수로 출력한다. 만약 색종이가 보이지 않는다면 정수 0을 출력한다. 아이디어 1. 색종이 개수 입력 받기 2. 색종이 개수만큼 반복 1) 왼쪽 아래 모서리 좌표 값과 너비, 높이 입력 받아서 2) 좌표 값을 기준으로 너비와 높이만큼 순회하며 1을 더해주기 3. 색종이를 더한 순서와 반대로, 최근에 추가한 색종이부터 면적을 세주기 1) 면적을 세고 나면 맨 위의 색종이가 있던 곳은 모든 0으로 바꿔주기 4. 출력은 더했던 순서(원래 순서)대로 해야한다. 코드 N = int(input()) board = [[0] * 1001 for _ in ra..
백준 14696. 딱지놀이 (파이썬)
문제 두 어린이 A, B가 딱지놀이를 한다. 딱지놀이 규칙은 다음과 같다. 두 어린이는 처음에 여러 장의 딱지를 가지고 있고, 매 라운드마다 각자 자신이 가진 딱지 중 하나를 낸다. 딱지에는 별(★), 동그라미(●), 네모(■), 세모(▲), 네 가지 모양 중 하나 이상의 모양이 표시되어 있다. 두 어린이가 낸 딱지 중 어느 쪽이 더 강력한 것인지는 다음 규칙을 따른다. 만약 두 딱지의 별의 개수가 다르다면, 별이 많은 쪽의 딱지가 이긴다.별의 개수가 같고 동그라미의 개수가 다르다면, 동그라미가 많은 쪽의 딱지가 이긴다.별, 동그라미의 개수가 각각 같고 네모의 개수가 다르다면, 네모가 많은 쪽의 딱지가 이긴다.별, 동그라미, 네모의 개수가 각각 같고 세모의 개수가 다르다면, 세모가 많은 쪽의 딱지가 이긴..
백준 2605. 줄 세우기 (파이썬)
문제 점심시간이 되면 반 학생 모두가 한 줄로 줄을 서서 급식을 탄다. 그런데 매일 같이 앞자리에 앉은 학생들이 앞에 줄을 서 먼저 점심을 먹고, 뒷자리에 앉은 학생들은 뒤에 줄을 서 늦게 점심을 먹게 된다. 어떻게 하면 이러한 상황을 바꾸어 볼 수 있을까 고민하던 중 선생님이 한 가지 방법을 내 놓았다. 그 방법은 다음과 같다. 학생들이 한 줄로 줄을 선 후, 첫 번째 학생부터 차례로 번호를 뽑는다. 첫 번째로 줄을 선 학생은 무조건 0번 번호를 받아 제일 앞에 줄을 선다. 두 번째로 줄을 선 학생은 0번 또는 1번 둘 중 하나의 번호를 뽑는다. 0번을 뽑으면 그 자리에 그대로 있고, 1번을 뽑으면 바로 앞의 학생 앞으로 가서 줄을 선다. 세 번째로 줄을 선 학생은 0, 1 또는 2 중 하나의 번호를 ..