300x250 알고리즘101 프로그래머스: 기사단원의 무기 https://school.programmers.co.kr/learn/courses/30/lessons/136798 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 처음 풀었던 방식 -> func solution(_ number:Int, _ limit:Int, _ power:Int) -> Int { var divisors = 0 for i in 1 ... number { var count = 0 for j in 1 ... i { if i % j == 0 { count += 1 } } if count > limit { count = power } div.. 2023. 10. 4. MD5 MD5란? Message-Digest algorithm 5의 약자로 암호화 해시 알고리즘 중 하나로 임의의 길이의 문자 값을 받아서 해시값을 출력해준다. 단방향 암호화이기 때문에 출력값에서 입력값으로 복원하기는 일반적으로 불가능하다. 복잡한 수학적 해시 알고리즘을 통해 32자의 문자열로 반환되며 같은 값은 항상 같은 출력값이 나온다. 또한 고속 연산이 가능하고 읨의로 변경된 패턴에 대해 충돌 가능성이 낮기 때문에 주로 파일의 무결성을 확인하는데 주로 사용된다. 권장되지는 않지만 MD5를 이용해 보안용도로 사용할 때에는 반드시 salt를 붙여서 사용해야한다. *salt: 입력된 값에 임의의 값을 붙인다든지, 암호화 한 값에 또다른 값을 붙여서 암호화 한다든지... 이름이 왜 Salt냐면 음식에 소금을 뿌리.. 2023. 9. 14. 프로그래머스: 2018 카카오 블라인드 채용 - [1차] 캐시 https://school.programmers.co.kr/learn/courses/30/lessons/17680 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 LRU 알고리즘을 이용해서 캐시 만큼 배열 요소 개수가 차면 0번 인덱스 값을 지워주고 최근 검색 중인 city가 배열에 있는지 확인 후 있으면 지워준 뒤 맨 뒤로 넣어주는 작업을 해주면 된다. (단, city가 치사하게 대문자일 때도 있고 소문자일때도 있으니 처음에 그냥 cities를 대문자건 소문자건 싹다 바꿔준디 작업해야함) func solution(_ cacheSize:Int, _ c.. 2023. 7. 21. 프로그래머스: 과일 장수 https://school.programmers.co.kr/learn/courses/30/lessons/135808 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 score = 사과 수 즉, 이 사과 들 중에 m개 씩 빼와서 상자를 만들어야 한다 그러면 score.count / m 만큼 상자를 만들 수 있는데 최대 이익을 내야 하므로 score를 오름차순 정렬한 배열에서 최대 이익을 만들 수 있는 score.count % m 인덱스 값부터 상자를 만들어 내면 된다. 이 상자들 각자 최저 사과 점수) x (한 상자에 담긴 사과 개수) 를 구해서 값들을.. 2023. 7. 20. 프로그래머스: 귤 고르기 https://school.programmers.co.kr/learn/courses/30/lessons/138476#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 텐저린의 종류별로 k만큼 종류를 분류 했을 때 작은 값을 리턴하면 된다.(문제의 예제 그대로) 내가 생각한 방법은 종류별 개수를 [종류:개수] 딕셔너리를 만들어서 내림차순 정렬 시켜준 뒤, 제일 처음의 value 부터 k에서 빼주고 result에 1씩 더해준다. k가 0 이거나 마이너스 값이 될 때 result를 리턴해주면 원하는 값을 만들 수 있다. func solution(_ k.. 2023. 7. 16. 프로그래머스: 멀리뛰기 https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 DP 문제 임 Int를 계속 더해줄 경우 제한된 n 2000의 범위를 넘어가므로 1234567로 나눈 나머지의 값을 사용해야한다 func solution(_ n:Int) -> Int { var result = [0,1,2] if n == 1 || n == 2 { return result[n] } for i in 2 ..< n { result.append((result[i] + result[i.. 2023. 7. 12. 프로그래머스: Summer/Winter Coding(~2018) - 점프와 순간이동 https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 N 까지 가기 위해선 항상 2의 위치를 거치게 된다 그러므로, N을 2로 나눴을 때 몫이 1이 될때까지 발생하는 나머지들을 모두 더한 수가 result가 된다. N result 3 2 7 3 8 1 9 2 func solution(_ n:Int) -> Int { var result = 1 var targetNumber = n while targetNumber != 1 { let mok = t.. 2023. 7. 11. 프로그래머스: 대충 만든 자판 https://school.programmers.co.kr/learn/courses/30/lessons/160586#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 keymap에 target의 문자가 하나라도 없으면 무조건 -1을 리턴 해야하는 것이 제일 핵심인 문제 func solution(_ keymap:[String], _ targets:[String]) -> [Int] { let keymapp = keymap.map{$0.map{String($0)}} let targetss = targets.map{$0.map{String($0)}} v.. 2023. 7. 8. 프로그래머스: 바탕화면 정리 https://school.programmers.co.kr/learn/courses/30/lessons/161990 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 가장 작은 x좌표와 가장 큰 x좌표, 가장 작은 y좌표와 가장 큰 y좌표를 이용하면 금방 풀어 낼 수 있다. func solution(_ wallpaper:[String]) -> [Int] { var coordinator = [(Int,Int)]() var minX = 50 var minY = 50 var maxX = 0 var maxY = 0 for i in 0 ..< wallpaper... 2023. 7. 3. 이전 1 2 3 4 5 ··· 12 다음 300x250