![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/PFCTa/btqLE2EVPnS/XuZKp9GJsbL5kMps5tBeX0/img.png)
문제 15686번: 치킨 배달 크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r, c)와 같은 형태로 나타내고, r행 c열 또는 위에서부터 r번째 칸 www.acmicpc.net 풀이 조합과 브루트포스로 간단하게 풀 수 있는 문제다 import sys from itertools import combinations import copy N, M = map(int, sys.stdin.readline().split(" ")) field = [] chickenhouse = [] # 인풋 받기 (0: 빈칸 / 1: 집 / 2: 치킨집) # 치킨집 좌표는 따로 저장함 for i in range(N): line = list(..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/on53L/btqLFonjgEZ/17ceFALa8cm6DCh0OI6LKK/img.png)
문제 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 풀이 먼저 인풋으로 들어온 값들을 가지고 2차원 배열을 채워준 후, bfs를 통해서 풀었다. import sys from collections import deque # 오른쪽 위 꼭짓점의 좌표는(N,M)이다 # K개의 네모 M, N, K = map(int, sys.stdin.readline().split(" ")) field = [[0 for _ in range(N)] for _ in range(M)] size = [] # 채우기 fo..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/oHHHL/btqKXi2SCT8/tZRuGmNSODChAucaKJcWLK/img.png)
문제 [Python] 백준(BOJ) 10816번: 숫자 카드2 문제 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,00 yuuj.tistory.com 풀이 모든 조합을 다 구한 후, 브루트포스로 계산해줬다. import sys from itertools import combinations N, S = map(int, sys.stdin.readline().split(" ")) arr = list(map(int, sys.stdin.readline().split(" "))) count = 0 for i in range(1, N+1): com = c..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/wmNYc/btqKShKUN8q/7P7kSsDcvhXHhyV2fKrIbK/img.png)
문제 10816번: 숫자 카드 2 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 풀이 숫자카드에서는 들어있는지 여부만 출력하면 됐지만 숫자카드2에서는 몇개가 있는지 출력해야한다. collections의 Counter를 사용해서 딕셔너리 형태로 횟수를 받고, 출력했다 import sys from collections import Counter N = sys.stdin.readline() A = Counter(sys.stdin.readline().strip().split(" ")) M = sys.stdin...
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bbuPCB/btqKVOuvr2F/ZPSEgsceRldozHGZY8IJU1/img.png)
문제 10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 풀이 수찾기 (yuuj.tistory.com/124) 와 유사한 문제 import sys N = sys.stdin.readline() A = set(sys.stdin.readline().strip().split(" ")) M = sys.stdin.readline() B = sys.stdin.readline().strip().split(" ") for each in B: print(1, end=" ") if each in A el..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bC3WgL/btqKVPtp96X/P5BbPFS0Zd5h2WwrjdvA9k/img.png)
문제 1920번: 수 찾기 첫째 줄에 자연수 N(1≤N≤100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1≤M≤100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안�� www.acmicpc.net 풀이 시간을 줄이기 위해 1. 들어오는 수들을 정수형으로 바꿔주지 않음 2. set 자료형을 사용했다. 어차피 같은 문자인지 비교만 하면 되기 때문에 스트링을 굳이 정수형으로 바꿔주지 않아 시간을 줄였고, set 자료형을 사용해 중복을 없앴다. import sys N = sys.stdin.readline() A = set(sys.stdin.readline().strip().split(" ")) M = sys.st..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/c5Psx4/btqKPU9qiqE/z3Kheqp6PZHDiwZ5kq7DDk/img.jpg)
(7월 초에 쓰다가 임시저장해두고 늦게 포스팅하는 글 입니다) 이 블로그에는 최대한 개인적인 내용을 담지 않으려고 하는 중이라 원래는 포스팅을 하지 않으려 했는데, 나도 준비할때 다른분들 블로그에서 도움을 많이 받았기 때문에 보안서약에 위배되지 않는 선에서 작성 해보려 한다. 선발 절차는 서류 - 테스트(온라인) - 면접+2차 테스트 (오프라인) - 결과 발표로 이루어졌다. 서류는 5월 말까지 마감이었으며 1차 sw적성진단은 6월 첫주에 봤고 면접은 2주정도 후에, 합격 연락은 면접후 일주일정도 지나서 왔다. 싸피 합격을 위해 알고리즘 잡스같은 업체에서 수업을 듣기도 하던데 나는 그냥 안들었다. 시험날까지 시간이 촉박하기도 했고, 굳이 그렇게 까지 해야하나? 싶어서. 실제로 합격자중에 알고리즘잡스를 듣고..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/zCLEr/btqKNnqHLIz/0UKDCPFqr8uz8Gv35uajLk/img.png)
유클리드 호제법이란 최대공약수를 구하기 위해서는 유클리드 호제법을 사용하면 된다. 호제법이란 두 수가 서로 상대방 수를 나누어서 결국 원하는 수를 얻는 알고리즘을 뜻한다. 먼저 1071을 1029로 나눈다. 42라는 나머지가 나온다. 만약 1029가 42로 나누어진다면 1071 = 42 * n이 될텐데 42로 안나눠지니까 42는 최대공약수가 될 수 없다. 그 후 1029을 42로 나눠서 21을 얻는다. 이때 42는 21로 나누어지기 때문에 21을 약수로 가진다. 따라서 최대공약수는 21이다. 글로 읽으면 복잡한데 결국 1071은 1071 = (1029 * 1) + 42 = ((42 * k) * 1) + 42 = (((21*2) *k) *1) + (21*2) = 21 * (k+2) 로 쓰일수 있다는걸 생각..
- Total
- Today
- Yesterday
- 안드로이드 키해시
- 소수 구하기 파이썬
- TextFormField keyboard
- 프로그래머스
- 백준
- flutter simultor
- 코틀린 바텀네비게이션
- 코틀린 리스트뷰
- 카카오톡으로 로그인 오류
- 코틀린 뷰페이저
- 안드로이드 카카오톡으로 로그인
- 백준알고리즘
- 백준 1806
- 파이썬 최대공약수
- 카카오 기출
- 코틀린
- 코틀린 데이터바인딩
- kotlin fragment
- 안드로이드
- 코틀린 뷰바인딩
- 투포인터 알고리즘
- 전화번호목록 파이썬
- 백준 1644
- 데이터바인딩 뷰바인딩 차이
- counting sort
- Kotlin
- 투포인터 알고리즘 파이썬
- 백준 2003
- 시뮬레이터 키보드
- 카카오 키해시
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |