- 22968-균형(swift풀이)2료일https://www.acmicpc.net/problem/22968문제를 해석하는게 어려웠다. 그래서 나와같은 어려움이 있는 사람들을 위해 정리하자면..정점의 개수가 주어질때 해당 정점으로 만들수 있는 AVL Tree의 최대 높이를 구하자는 것이다. AVL Tree = 왼쪽과 오른쪽 노드의 층 차이가 1층보다 크면 안됨. 결국 같은 층이거나 1층차이이여만 한다. 맨 오른쪽의 예제를 보면 1과 10이 2층차이난다. 그냥 이렇게 해석하면 끝!딱 보자마자 아 이거 규칙이 있겟구나 생각을 하며 점을 찍어보았다.1로 그래프를 찍었을때 딱 저 부분이 킥이다. 저 1이 생기는 순간 한층을 더 아래로 내릴 수 있다. 왜냐? 1층차이니까!! 완전이진트리가 될 필요가 없다.그러므로 조금 더 규칙을 구하기 위해 경우를 좀 ..
- 2024-12-26 13:25:46
- 산모양타일링 - swift2료일https://school.programmers.co.kr/learn/courses/30/lessons/258705 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제분석n이 주어지면 밑변이 n+1로 깔림. 그리고 tops 배열에 따라 위에 삼각형이 있는지 없는지 결정된다. 1이면 위에 있는거고 0이면 없는거고 즉 위의 이미지는 일부러 짤랏지만 [0,1]이겟쥬? 그런데 삼각형 2개로 이루어진 사다리꼴과 삼각형 1개로 배치해서 가득 채우는 경우를 10007로 나누라고 한다.문제접근에? 이렇게 큰 수로 나눠? 이건 DP네~! 자 여기까지 감을 잡았다. // 그런데 기존의 DP와 다른게 n도 달라질수 ..
- 2024-11-15 17:06:21
- 12980좋아하는 수열 - swift2료일https://www.acmicpc.net/problem/12980흠..이 문제는 풀이가 없는 것 같아서 내가 먼저 올린다. 그래야 조회슈 ㅎ...는 농담이고 문제가 재밌다.문제분석1. 순열의 크기 n이 주어진다. 그리고 1..N까지 써야하는 배열이 있다. 이 배열에는 0이 있는데 이는 지워졌다는 것을 의미한다.2. 즉 0자리에는 이미 배열에 있는 수 말고 1..N까지의 수 중 아무거나 사용할 수 있다.3. 하지만 S 점수를 맞추는 경우의 수를 구해야한다.4. 점수? [1,2,3] 이라고 보면 [1,2] , [1,3], [2,3]의 케이스가 가능하기에 총 3점이다. 이런식으로 배열의 인덱스와 값을 비교해 i 문제접근1. 0인 곳에 남은 수로 채워서 모든 경우를 구해보자.2. 그 케이스별로 계산을 하여..
- 2024-11-13 20:08:38
- 상담원인원-Swift풀이2료일https://school.programmers.co.kr/learn/courses/30/lessons/214288 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr오랜만입니다. 알고리즘은 계속 풀고 잇엇으나 그닥 올릴만한 것이 없어서...ㅜ (핑계핑계)자 이번문제는 내가 PM이라고 몰입해야한다.문제 분석 1. 멘토에게 유형이 있음. 맞는 유형의 사람을 시간이 되면 한명씩 진행. 2. 그런데 만약 여러명이 웨이팅중이다? 가장 먼저 상담요청한 참가자부터 진행한다. 3. req는 c번 유형의 사람이 a분때 b분만큼 요청하는 것을 의미한다. -> 결국 구해야하는것은 기다리는 시간을 최소로 하도..
- 2024-11-12 15:30:52
- 17298-Swift백준골드42료일https://www.acmicpc.net/problem/17298문제 해석먼저 문제이다. 음..? 문제 이해는 굉장히 쉽다. 그냥 나보다 오른쪽에 있는 것들중에 큰것중에 나랑 가장 가까운 놈을 찾아서 찍어주면 된다.단순히 생각할 수 있는 방법은 포인터를 이용한 방법이였다. 2중 For문을 통해 현재 내껏보다 오른쪽으로 하나씩 가면서 큰것을 발견하면 Break를 걸어주고 정답 Array에 추가해주는 방식이다. 하지만 문제를 잘 읽어보면 1,000,000까지도 가능하다. 최악의 경우 O(n제곱)인 기존의 방법으로는 시간초과가 뜰것이 분명하다. 그래서 다른 방식을 생각해보아야 했다.문제 풀이Stack을 활용하여 풀이를 한다. 먼저 가장 앞의 인덱스와 해당 넘버를 스택에 넣어준다. 그 후 한칸씩 뒤로 가며 ..
- 2024-10-08 16:31:00
- 9251-Swift알고리즘2료일오랜만에 돌아온 알고리즘 솔루션정리!!!https://www.acmicpc.net/problem/9251 9251번: LCSLCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다.www.acmicpc.net오늘의 문제이다! LCS최장 공통 부분 수열을 구하라는 문제!어떻게 구하면 될까?1. 맨 마지막문자열부터 비교를 해보면 된다. 예를들어 이렇게 있을때 만약 맨마지막 문자열이 같다? 하면 이전까지의 최장공통부분수열의 개수 + 1이다.즉 LCS(i,j) = LCS(i-1, j-1) + 1 이라는 점화식이 나오게 된다. 그렇..
- 2024-03-17 16:54:08
- Queue 10845 - swift2료일큐 구현이다. swift로는 큐를 어떻게 구현하는지를 물어보는 거였다. // // main.swift // Queue // // Created by 235 on 2023/09/05. // import Foundation struct Queue{ var queue: [Int] = [] public var size: Int { return queue.count } public var isEmpty: Bool { return queue.isEmpty } public var front: Int { return isEmpty ? -1 : queue[0] } public var back: Int { guard let last = queue.last else {return -1} return last } mutati..
- 2023-09-05 02:28:31
- 1259 - swift로풀기2료일오랜만에 돌아왔습니다 ㅠㅠㅠ 한동안 알고리즘을 놓다가 다시 잡게 되었네요. 이전까지는 주로 난이도 있는 것들을 파이썬으로 푸는 풀이들을 올렸었는데 리뉴얼을 했습니다!!! 올해 마치고 바로 취업에 목표를 둔것이 아니기에 swift로 차근차근 난이도를 높여가며 풀어과는 과정을 이제부터 올릴 예정입니다. 대망의 첫문제는 바로 유명한 팰린드롬수! 문제의 이해는 브론즈1로 낮기에 바로 풀이로 들어가겠습니다. // // main.swift // Algoritm // // Created by 235 on 2023/09/04. // import Foundation var arr: [String] = [] while true { var input = readLine()! if input == "0"{ break }els..
- 2023-09-05 01:06:34
- 파괴되지 않은 건물 - pYthon2료일https://school.programmers.co.kr/learn/courses/30/lessons/92344 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ?? 왤캐 쉬워? 하면서 풀었던 문제 1트 타입이1이라면 데미지니까 보드에서 디그리만큼 빼주고 아닐경우는 더해주고 보드를 전체적으로 돌아보면서 0보다 크다면 남아있는벽이므로 answer+=1해주었다. 그랫더니 결과는? 두구두구두구... def solution(board, skill): answer = 0 for type,r1,c1,r2,c2,degree in skill: if type == 1: ..
- 2023-06-19 13:53:18
- 양궁대회- 22KAKAO Blind(python)2료일https://school.programmers.co.kr/learn/courses/30/lessons/92342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. n의 제한이 10이기에 일단 나는 중복조합을 사용해도 된다고 생각을 하였다. 2. info를 보면 점수가 첫번째인덱스가 10이고 줄어드는 형식으로 되어있기에 temprion에도 만약 내가 맞춘 점수에 해당하는 인덱스에 1이 증가하도록 하였다. 그리고 나서 해당하는 temprion과 info를 비교하면서 만약 temprion이 크다면 라이언이 해당하는 점수를 얻고 아닌데 만약 Info[k]에만..
- 2023-06-16 21:46:59
스킨 업데이트 안내
현재 이용하고 계신 스킨의 버전보다 더 높은 최신 버전이 감지 되었습니다. 최신버전 스킨 파일을 다운로드 받을 수 있는 페이지로 이동하시겠습니까?
("아니오" 를 선택할 시 30일 동안 최신 버전이 감지되어도 모달 창이 표시되지 않습니다.)