문제 1244번: 스위치 켜고 끄기 첫째 줄에는 스위치 개수가 주어진다. 스위치 개수는 100 이하인 양의 정수이다. 둘째 줄에는 각 스위치의 상태가 주어진다. 켜져 있으면 1, 꺼져있으면 0이라고 표시하고 사이에 빈칸이 하나씩 www.acmicpc.net 풀이 문제의 끝부분을 안읽어서 출력형식 오류를 두번이나.. import sys N = int(sys.stdin.readline()) switch_list = list(map(int, sys.stdin.readline().split(" "))) switch_list.insert(0, 0) def toggle(i): switch_list[i] = abs(switch_list[i] - 1) def boys(int): current = int while cu..
문제 2578번: 빙고 첫째 줄부터 다섯째 줄까지 빙고판에 쓰여진 수가 가장 위 가로줄부터 차례대로 한 줄에 다섯 개씩 빈 칸을 사이에 두고 주어진다. 여섯째 줄부터 열째 줄까지 사회자가 부르는 수가 차례대로 www.acmicpc.net 풀이 가로세로를 확인하는 함수, 대각선 확인하는 함수를 만든 후 인풋에 따라 기본 빙고판을 채웠고, 사회자가 부르는 순서대로 하나씩 지워가면서 빙고인지 확인해줬다. import sys def check_line(): bingo = 0 for i in range(5): bool1 = True bool2 = True for j in range(5): if board[j][i] != -1: bool1 = False if board[i][j] != -1: bool2 = Fals..
문제 2563번: 색종이 가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 www.acmicpc.net 풀이 제한이 최대 100 * 100이길래 0으로 채운 100*100 행렬을 만들고 포문 두번 도는 방식으로 풀었다. 어차피 뒤에 들어온 애가 덮어씌워지기 때문에 따로 처리해줄건 없어서 편했던 문제 import sys board = [[0 for _ in range(100)] for _ in range(100)] def make_square(x, y): for i in range(10): for j in range(10): board[x+i][y+j] = 1 N..
문제 2491번: 수열 0에서부터 9까지의 숫자로 이루어진 N개의 숫자가 나열된 수열이 있다. 그 수열 안에서 연속해서 커지거나(같은 것 포함), 혹은 연속해서 작아지는(같은 것 포함) 수열 중 가장 길이가 긴 것을 찾 www.acmicpc.net 풀이 올라가는게 연속되는경우, 내려가는게 연속되는 경우를 is_increasing으로 관리하면서 풀었는데 같은 값이 반복되는 경우의 반례에서 걸렸다. 예를들어 5 4 4 2 2나 1 2 2 3 3 같은 경우도 테스트해서 풀어야함 그래서 same 변수로 몇번 반복되었는지도 관리해줬다. import sys N = int(sys.stdin.readline()) li = list(map(int, sys.stdin.readline().split(" "))) result..
문제 2477번: 참외밭 첫 번째 줄에 1m2의 넓이에 자라는 참외의 개수를 나타내는 양의 정수 K (1 ≤ K ≤ 20)가 주어진다. 참외밭을 나타내는 육각형의 임의의 한 꼭짓점에서 출발하여 반시계방향으로 둘레를 돌면서 지 www.acmicpc.net 풀이 import sys N = int(sys.stdin.readline()) # 마지막에 곱해줄애 li = [[0, 0]] cur_x, cur_y = 0, 0 for _ in range(6): cmd, lenght = map(int, sys.stdin.readline().split(" ")) if cmd == 1: cur_x += lenght elif cmd == 2: cur_x -= lenght elif cmd == 3: cur_y -= lenght ..
문제 2669번: 직사각형 네개의 합집합의 면적 구하기 평면에 네 개의 직사각형이 놓여 있는데 그 밑변은 모두 가로축에 평행하다. 이 네 개의 직사각형들은 서로 떨어져 있을 수도 있고, 겹쳐 있을 수도 있고, 하나가 다른 하나를 포함할 수도 있으 www.acmicpc.net 풀이 비슷한 유형의 문제가 많은데, 그 중 가장 기본이 되는 문제같다. import sys board = [[0 for _ in range(100)] for _ in range(100)] for _ in range(4): x1, y1, x2, y2 = map(int, sys.stdin.readline().split(" ")) for i in range(x1, x2): for j in range(y1, y2): board[i][j] =..
문제 10157번: 자리배정 첫 줄에는 공연장의 격자 크기를 나타내는 정수 C와 R이 하나의 공백을 사이에 두고 차례대로 주어진다. 두 값의 범위는 5 ≤ C, R ≤ 1,000이다. 그 다음 줄에는 어떤 관객의 대기번호 K가 주어진다. www.acmicpc.net 풀이 이번 시즌 풀었던 코테문제와 상당히 유사했던 문제 (미리 풀어볼걸) 이 문제는 달팽이수열의 기본적인 문제인데, 달팽이 수열이란 순서대로 빙글빙글 돌며 채운 행렬을 뜻한다. 1~6까지 위 방향 (R-0개) 7~12까지 오른쪽 방향 (C-1개) 13~17까지 아래 방향 (R-1개) 18~22까지 왼쪽 방향 (C-2개) 23~26까지 위 방향 (R-2개) ... 이런식으로 반복되는 규칙을 갖고 있다. R, C가 순서대로 반복되고, i가 2번에..
문제 2635번: 수 이어가기 첫 번째 수가 주어진다. 이 수는 30,000 보다 같거나 작은 양의 정수이다. www.acmicpc.net 풀이 규칙에따라 계산하는 함수 calc()를 먼저 만들고, 브루트포스로 입력받은수 N까지 다 돌리며 가장 큰 경우를 찾았다. N의 반보다 작은 수는 100-> 1->-99 이런식으로 두번밖에 안되기 때문에 시간을 줄이기 위해 N // 2부터 돌렸다. import sys def calc(second_number): result = [] result.append(N) result.append(second_number) index = 2 while result[index - 2] - result[index - 1] >= 0: result.append(result[index..
- Total
- Today
- Yesterday
- 카카오 키해시
- 코틀린 바텀네비게이션
- counting sort
- 파이썬 최대공약수
- 백준 1806
- flutter simultor
- 투포인터 알고리즘
- 코틀린 리스트뷰
- 안드로이드 카카오톡으로 로그인
- 소수 구하기 파이썬
- 카카오톡으로 로그인 오류
- 안드로이드
- 코틀린 뷰바인딩
- 안드로이드 키해시
- 백준 2003
- 코틀린 뷰페이저
- kotlin fragment
- 코틀린
- 투포인터 알고리즘 파이썬
- 시뮬레이터 키보드
- 코틀린 데이터바인딩
- 백준알고리즘
- TextFormField keyboard
- 카카오 기출
- 데이터바인딩 뷰바인딩 차이
- 백준 1644
- 전화번호목록 파이썬
- 프로그래머스
- 백준
- Kotlin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |