코드카타 신고 결과 받기 문제 신고한 유저에게 날라갈 정지메일 수의 리스트를 반환하는 문제이다.동일한 유저에 대한 신고 횟수는 1회로 처리되므로 신고 내역 리스트는 중복처리가 필요하다. 테스트케이스 따로 추가할 테스트케이스는 없는 것 같다. 풀이class Solution { fun solution(id_list: Array, report: Array, k: Int): List { // 동일한 유저에 대한 신고는 한 번으로 제한되므로 중복된 신고내역 제거 var reportSet = report.toSet() // 신고당한 유저들을 저장할 맵 (키: 신고 당한 사람, 값: 신고 당한 횟수) var reportMap = mutableMapOf..
푼 문제들 오늘도 문자열 다루는 문제들을 풀었는데 역시나 쉽다. 문자열의 앞의 n글자 문제 풀이def solution(s, n): return s[:n]문자열 슬라이싱을 활용해서 s의 0번째 인덱스부터 n - 1번지 인덱스까지의문자를 포함하는 부분 문자열을 반환한다. 접두사인지 확인하기 문제 풀이def solution(s, i): def makePrefixList(s): res = [] for i in range(len(s)): res.append(s[:i]) return sorted(res) return 1 if i in makePrefixList(s) else 00 ~ 문자열의 길이의 범위에 해당하는 인..
코드카타 공원산책 문제 시작지점에서 주어진 방향으로 이동해 도착한 지점을 반환하는 문제이다. 입출력 예시 이동 중에 장애물이 있거나 공원을 빠져나왔다면 해당 이동명령은 실행하지 않는다. 테스트케이스 추가입력값 > ["XXX", "XSX", "XXX"], ["E 2", "S 3", "W 1"]출력값 > [1, 1]시작위치의 Y 좌표값이 0이 아닐수도 있음을 고려해야한다. 풀이class Solution { fun solution(park: Array, routes: Array): List { // 시작 위치 찾기 val sY = park.indexOfFirst { it.contains('S') } // 'S'가 있는 행 찾기 val sX = park[sY..
푼 문제들 파이썬은 문자열 다루기가 유독 쉬운 느낌이다. 배열 만들기 5 문제 풀이def solution(intStrs, k, s, l): res = [] for i in intStrs: # intStrs의 요소를 순회하며 slice = int(i[s: s+l]) # 조건에 따라 자른 문자열을 정수로 변환한 값을 구하고 if slice > k: res.append(slice) # 해당 값이 k보다 크면 res에 추가한다 return res슬라이싱한 문자열을 정수로 변환해서 비교한다. 부분 문자열 이어 붙여 문자열 만들기 문제 풀이def solution(string, parts): res = '' for i in range(len(string..
코드카타 달리기 경주 문제 이름이 불린 선수의 위치를 앞의 선수와 교체하여경주가 끝났을 때(모든 이름을 불렀을 때) 플레이어의 등수를 반환하는 문제이다. 경기 진행 중 1등인 선수의 이름을 부르지 않는다 하니1등 앞에 있는 선수를 불러오려다 나는 index범위 초과 에러는 고려하지 않아도 된다. 근래에 고봉밥 문제 설명 보다가 간결한 문제설명을 보니 이리 좋을수가 없다. 시간 복잡도를 고려하지 않은 풀이class Solution { fun solution(players: Array, callings: Array): Array { // 배열 요소 위치 변환 함수 fun swap(arr: Array, i: Int, j: Int) { val temp..
푼 문제들 간단한 논리 연산 문제 풀이def solution(x1, x2, x3, x4): return (x1 or x2) and (x3 or x4)or 연산은 둘 중 하나만 true여도 true를 반환하고,and 연산은 둘 다 true여야 true를 반환한다. 주사위 게임 3 문제 풀이def solution(a, b, c, d): # 주사위 값 오름차순 정렬 dice = sorted([a, b, c, d]) # 모든 주사위 값이 같은 경우 if dice[0] == dice[1] == dice[2] == dice[3]: return 1111 * dice[0] # 세 개의 주사위 값이 같고 나머지 하나가 다른 경우 if dice..
코드카타 개인정보 수집 유효기간 문제 개인정보 수집 일자에서 해당 약관의 유효기간을 더한 시점이 오늘 날짜를 지났다면해당 개인정보를 파기한다. 파기한 개인정보 번호를 리스트로 출력한다. 입출력 예시 날짜 연산을 하기 위해선 해당 입력값을 가공할 필요가 있어보인다. 풀이class Solution { fun solution(today: String, terms: Array, privacies: Array): List { // 오늘의 날짜 문자열을 .을 기준으로 나눠서 정수 리스트로 변환 val today = today.split(".").map { it.toInt() } // 약관을 키로 유효기간을 값으로 가지는 맵 생성 val termsMa..
코드카타 바탕화면 정리 문제 파일을 모두 선택할 수 있는 최소 드래그 범위를 구하는 문제이다. lux는 luy는 드래그 시작점의 X, Y 좌표에 해당,rdx와 rdy는 드래그 끝점의 X, Y 좌표에 해당한다. 입출력 예시 테스트 케이스에 포함되어 있지 않지만 맨 마지막 줄에 파일이 없는 경우도 고려해야 한다. 풀이class Solution { fun solution(wallpaper: Array): List { // 드래그 시작, 끝 점 X, Y 좌표 초기화 var lux = 0 var luy = 50 // wallpaper의 최대 길이가 50이기 때문에 50으로 초기화 var rdx = 0 var rdy = 0 ..
- Total
- Today
- Yesterday
- 개발블로그
- 파이썬
- 귤 고르기
- 그룹화
- 스파트타 코딩클럽
- 9 to 9
- 국비지원
- 안드로이드 스튜디오
- 레이아웃
- 위젯
- 프로그래머스 #코틀린 #map
- 무스마
- 행렬의 내적
- 코틀린
- kakao api
- 기초 문제
- 플러터
- android 부트캠프
- 뷰
- 프로그래머스
- shared_preferences
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |