본문 바로가기

분류 전체보기

(695)
dev-camp Day7 : 쿠폰 적용법 및 Admin만 쿠폰 관련 API 접근 0. 쿠폰은 선택 적용? 최대 할인율 자동 적용? 정액제와 정률제 쿠폰을 함께 생성하는 경우 적용 방법에 따라 할인 가격이 달라질 수 있다. 현재 최대의 자동 적용되는 할인율이 있다고 해도 다른 강의 적용하고 싶을 수 있으므로 내 생각에는 선택 적용으로 하고 내가 가진 쿠폰을 모두 조회하는 API의 응답값으로 최고 할인율 조합을 알려주면 좋을 것 같다. 1. Admin만 쿠폰을 생성할 수 있어야 한다. - AuthGuard 의 CanActivate를 이용해서 Custom decorator를 생성 - 특정 Role을 가진 회원(admin)만 쿠폰 생성 API에 접근 가능하게 함. 2. 찾아낸 개선점 Custom decorator가 구현되어 있지 않은데, 해당 기능을 구현하여 user의 role별로 접근을 ..
프로그래머스 코딩테스트 연습 : 3진법 뒤집기 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/68935 나의 풀이 FAIL class Solution { public int solution(int n) { int left = n % 3 for (i=0; i 0){ a = (n % 3) + a; n /= 3; } a = new StringBuilder(a).reverse()...
프로그래머스 코딩테스트 연습 : 최대공약수와 최소공배수 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/12940 나의 풀이 class Solution { public int[] solution(int n, int m) { int[] answer = new int[2]; for (int i=1; i0; j--){ if (n%j == 0 && m%j == 0){ answer[0] = j; break; } } return answer; } } 다른 사람의 풀이 class Solution { public int[] solution(int n, int m) { int[] answer = new int[2]; for (int i = 1; i < n + m; i++) { if (n % i == 0 ..
프로그래머스 코딩테스트 연습 : 직사각형 별찍기(20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/12969 나의 풀이 import java.util.Scanner; class Solution { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int a = sc.nextInt(); int b = sc.nextInt(); for (int i=0;i sb.append("*")); IntStream.range(0, b).forEach(s -> System.out.println(sb.toString())); } } 소감 StringBuilder append 기억하기
프로그래머스 코딩 테스트 연습 : 행렬의 덧셈 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/12950 나의 풀이 class Solution { public int[][] solution(int[][] arr1, int[][] arr2) { int[][] arr3 = new int[arr1.length][arr1[0].length]; for(int i=0;i
프로그래머스 코딩테스트 연습 : 문자열 다루기 기본 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/12918 나의 풀이 import java.util.*; class Solution { public boolean solution(String s) { String[] numbers = {"0","1","2","3","4","5","6","7","8","9"}; String[] array = s.split(""); if (s.length() == 4 || s.length() == 6){ for (int i=0; i
프로그래머스 코딩테스트 연습 : 부족한 금액 계산하기 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/82612 나의 풀이 class Solution { public long solution(int price, int money, int count) { long wallet = money; for (long i=1; i= 0 ? 0 : -wallet; } } 다른 사람의 풀이 class Solution { public long solution(long price, long money, long count) { return Math.max(price * (count * (count + 1) / 2) - money, 0); } } 소감 여러가지 풀이가 있다
프로그래머스 코딩테스트 연습 : 문자열 내림차순으로 배치하기 (20240312, java) 문제 바로가기: https://school.programmers.co.kr/learn/courses/30/lessons/12917 나의 풀이 import java.util.*; class Solution { public String solution(String s) { String[] array = s.split(""); Arrays.sort(array, Collections.reverseOrder()); return String.join("",array); } } 다른 사람의 풀이 import java.util.*; class Solution { public String solution(String s) { return s.chars().boxed().sorted(Collections.reverseOr..