pooney
[프로그래머스] 추억점수
알고리즘 2023. 6. 4. 23:38

public int[] solution(String[] name, int[] yearning, String[][] photo) { int [] answer = new int[photo.length]; Map nameMap = new HashMap(); for(int i=0; i

[프로그래머스] 달리기 경주
알고리즘 2023. 5. 31. 22:55

처음 Map을 사용하지 않고 for문으로 해결한 경우 최악의 수가 나와 시간에러가 발생하였다 이후 시간 문제를 해결 하기 위해 Map을 사용하는 것으로 해결하였다. import java.util.*; class Solution { public String[] solution(String[] players, String[] callings) { Map idxMap = new HashMap(); for(int i=0; i

[프로그래머스] 그룹별 조건에 맞는 식당 목록 출력하기
알고리즘 2023. 5. 29. 01:03

해결답) 동률 리뷰수에 대한 정의가 정의가 되어 있지 않아 LIMIT1로 해결함. SELECT MM.MEMBER_NAME , R.REVIEW_TEXT, DATE_FORMAT(R.REVIEW_DATE, '%Y-%m-%d') FROM REST_REVIEW R INNER JOIN MEMBER_PROFILE MM ON R.MEMBER_ID = MM.MEMBER_ID INNER JOIN ( SELECT COUNT(*) AS CNT , MP.MEMBER_ID from MEMBER_PROFILE MP INNER JOIN REST_REVIEW RR ON MP.MEMBER_ID = RR.MEMBER_ID GROUP BY MEMBER_ID ORDER BY CNT DESC LIMIT 1) A ON R.MEMBER_ID = ..

article thumbnail
프로그래머스 - 정수 내림차순으로 배치하기
알고리즘 2022. 12. 25. 22:11

문제 내가 해결한 답 1. Stream을 이용한 Sorting import java.util.*; import java.util.stream.Collectors; class Solution { public long solution(long n) { String s = Arrays.stream(String.valueOf(n).split("")).sorted(Comparator.reverseOrder()).collect(Collectors.joining()); return Long.parseLong(s); } }

article thumbnail
프로그래머스 - x만큼 간격이 있는 n개의 숫자
알고리즘 2022. 12. 19. 18:11

문제 내가 해결한 답 1. int -> long 으로 형변환 진행 x:10000000, n:1000 이 들어오면 int 범위를 초과하여 음수가 나오기 때문이다. public long[] solution(int x, int n) { long[] answer = new long[n]; for(int i=1; i

article thumbnail
프로그래머스 - 문자열 내 p와 y의 개수
알고리즘 2022. 12. 19. 17:55

문제 내가 해결한 답 1. Stream을 이용한 방법 boolean solution(String s) { String upString = s.toUpperCase(); long pCnt = upString.chars().filter(i-> i == 'P').count(); long yCnt = upString.chars().filter(i-> i == 'Y').count(); return pCnt == yCnt; } 2. for문과 char를 이용한 방법 boolean solution(String s) { int pCnt = 0; int yCnt = 0; for(int i=0; i

article thumbnail
프로그래머스 - 정수 제곱근 판별
알고리즘 2022. 12. 19. 01:28

문제 내가 해결한 방법 1.sqrt를 통하여 제곱근을 구하고 해당 값 * 값 = n 으로 제곱근 여부를 판별 public long solution(long n) { long value = (long) Math.sqrt(n); if((value * value) == n){ long nPlus = (long) (value + 1); return nPlus * nPlus; } return -1L; }

article thumbnail
프로그래머스 - 자연수 뒤집어 배열로 만들기
알고리즘 2022. 12. 19. 01:05

문제 내가 해결한 답 1. for문을 이용하여 10으로 나눈 나머지를 통한 계산 :) n%10의 경우 괄호로 묶어 줘야한다. class Solution { public int[] solution(long n) { int [] arrays = new int[String.valueOf(n).length()]; for(int i=0; i