[LeetCode] 198. House Robber
·
Problem Solving/LeetCode
출처 : https://leetcode.com/problems/house-robber/ House Robber - LeetCode Can you solve this real interview question? House Robber - You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent ho leetcode.com 아직 부족하다는 생각이 많이 든 문제였다. DP를 사용하였지만 솔루션을 보면 내가 짠 코드가 무색해..
[BOJ] 1991번: 트리 순회
·
Problem Solving/Baekjoon
출처 : https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net node 클래스를 만들어서 left 자식과 right 자식을 관리해주면 된다. 쉬운 문제였다 ! package com.ll.boj.silver.p1991; import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Scanner; public class Main { sta..
IAM 유저 생성과 MFA
·
DevOps/AWS
[IAM 유저 생성 실습] 1. services → IAM 2. Account management → Create User 3. Enter User detail 4. Set permissions 5. [Optional] Tags -> Add new tag 6. created User MFA 1. User -> Security credentials -> Assign MFA device 클릭 -> name 설정, Authenticaor app 클릭 후 Next 2. www.authy.com 접속 후 OS에 맞게 download 3. 설치 후 휴대폰 or 이메일 인증 및 key 입력 (Set up device 화면에서 show secret key 클릭 후 key를 authy에 입력) 3-1. 로그인된 auth..
구름톤 챌린지 2주차 학습 일기 - 3
·
Problem Solving
출처 : https://level.goorm.io/exam/195688/%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%82%98%EB%88%84%EA%B8%B0/quiz/1 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io 문자열 나누기 문제이다.길이가 N인 문자열 S가 주어진다. 문자열 S를 서로 겹치지 않는 3개의 부분문자열로 나눈다. 부분문자열은 모두 길이가 1 이상이여야 하며, 원래 문자열에서 연속해야 한다. 조건 1. 문자열 S를 위 조건에 따라 나눴을 때, 등장하는 모든 부분문자열을 중복 제거하고 사전순으로 정렬한 결과를 P라고 한다. 조건 2. 나누어진 3개의 문자열이 각각 P에서 i,j,k번쨰로 등장하는 문자열이라면,..
[BOJ] 4485번 : 녹색 옷 입은 애가 젤다지?
·
Problem Solving/Baekjoon
출처 : https://www.acmicpc.net/problem/4485 4485번: 녹색 옷 입은 애가 젤다지? 젤다의 전설 게임에서 화폐의 단위는 루피(rupee)다. 그런데 간혹 '도둑루피'라 불리는 검정색 루피도 존재하는데, 이걸 획득하면 오히려 소지한 루피가 감소하게 된다! 젤다의 전설 시리즈의 주 www.acmicpc.net 첫 접근은 최단 경로를 구하는 문제라고 생각해서 BFS를 사용했다. 하지만 테스트 케이스조차 통과하지 못하였고 힌트를 얻어 다익스트라 알고리즘을 사용하는 것을 파악했다. 출발지 (0,0)에서 목적지 (n-1, n-1)까지 최단 비용을 사용하여 목적지에 도달해야 한다. 그러기 위해서는 무작정 출발지에서 최소 비용을 따라갈 것이 아니라 지속적인 갱신이 필요하다. 파란색 경로..
구름톤 챌린지 1주차 학습 일기 - 2
·
Problem Solving
문제 5. 이진수 정렬 출처 : https://level.goorm.io/l/challenge/goormthon-challenge 구름LEVEL 난이도별 다양한 문제를 해결함으로써 SW 역량을 향상시킬 수 있습니다. level.goorm.io N개의 10진수 정수가 주어지면 아래와 같은 기준에 따라 정수를 정렬한다. 1. 10진수 정수를 2진수로 나타냈을 떄, 2진수에 포함된 1의 개수를 기준으로 내림차순 정렬한다. 2. 1의 개수가 같다면, 원래 10진수를 기준으로 내림차순한다. 나는 정수를 bin()을 통해 2진수로 변환시키고 b뒤의 숫자 중 Counter()를 통해 '1'의 개수를 bins 배열에 넣어줬다. 다시 말해서, 10진수를 2진수로 변환시키면 0b0010과 같은 형태의 문자로 출력이 된다...
무료 API들
·
Backend/Spring Boot
발할때 유용하게 써먹을만한 무료 API들입니다. 토이 프로젝트 할때 요긴히 사용 할 수 있을 것 같습니다. JSON Placeholder (https://jsonplaceholder.typicode.com/) : 테스트용 가짜 데이터를 제공하는 API. Google Translate (https://cloud.google.com/translate/docs/) : 한달에 50만 요청까지 무료로 사용 가능한 번역 API. Open Weather Map(https://openweathermap.org/api) : 날씨 정보를 제공하는 API. REST Countries ((https://restcountries.com/) : 나라 정보를 제공하는 API. 나라 이름, 수도, 인구, 통화, 언어 등등. IP A..
쿼리 파라미터 로그 남기는 방법
·
Backend/Spring Boot
방법1. application.yml 파일에서 다음과 같이 설정 logging : level : org.hibernate.type : trace 2. 외부 라이브러리 사용하기 (p6spy) 스프링부트를 사용하면 이 라이브러리만 추가하면 된다. implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.6' https://github.com/gavlyukovskiy/spring-boot-data-source-decorator GitHub - gavlyukovskiy/spring-boot-data-source-decorator: Spring Boot integration with p6spy, datasource-proxy, flexy-poo..
[LeetCode] 238. Product of Array Except Self
·
Problem Solving/LeetCode
출처 : https://leetcode.com/problems/product-of-array-except-self/description/ Product of Array Except Self - LeetCode Can you solve this real interview question? Product of Array Except Self - Given an integer array nums, return an array answer such that answer[i] is equal to the product of all the elements of nums except nums[i]. The product of any prefix or suffix of nu leetcode.com 접근법을 몰라서 풀지..
[LeetCode] 36. Valid Sudoku
·
Problem Solving/LeetCode
출처 : https://leetcode.com/problems/valid-sudoku/description/ Valid Sudoku - LeetCode Can you solve this real interview question? Valid Sudoku - Determine if a 9 x 9 Sudoku board is valid. Only the filled cells need to be validated according to the following rules: 1. Each row must contain the digits 1-9 without repetition. 2. Each c leetcode.com 내 풀이 : class Solution: def isValidSudoku(self, boa..
구름톤 챌린지 1주차 학습 일기 - 1
·
Problem Solving
문제 3. 합 계산기 간단한 문제였다. 문자와 수를 분리해서 해당 문자열에 해당하는 부호를 판별해 연산을 해주면 된다. 문자로 받아서 부호에 해당하는 문자를 뽑아 변수에 저장해 줄 수 있었다. 나는 애초에 세 개의 변수에 받아 숫자에 해당하는 문자만 정수로 변환하여 연산해주었다. 편한대로 사용하면 될 것 같다. 3일차 문제 클리어 -! 내 풀이 : import sys si = sys.stdin.readline t=int(si()) res = 0 for _ in range(t) : a,b,c=si().split() a = int(a) c = int(c) if b == '+' : res += (a+c) elif b == '-' : res += (a-c) elif b == '*' : res += (a*c) e..
[LeetCode] 347. Top K Frequent Elements
·
Problem Solving/LeetCode
출처 : https://leetcode.com/problems/top-k-frequent-elements/ Top K Frequent Elements - LeetCode Can you solve this real interview question? Top K Frequent Elements - Given an integer array nums and an integer k, return the k most frequent elements. You may return the answer in any order. Example 1: Input: nums = [1,1,1,2,2,3], k = 2 Output: [1,2] leetcode.com 방법 1) 우선순위 큐를 사용한 풀이 class Solution: ..