일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 카카오코테
- 정처기
- 혼공파
- navermap
- 코딩테스트
- groupby
- select
- 스터디
- 프로그래머스
- Kotlin
- 코테
- 안드로이드
- 혼공단
- 우아한테크코스
- doitandroid
- Android
- CS
- 코딩
- 자바
- Til
- 코틀린
- join
- SQL
- 인프런
- 우테코
- 정보처리기사
- 혼공챌린지
- java
- MySQL
- 안드로이드스튜디오
- Today
- Total
목록프로그래머스/Lv.1 (26)
Welcome! Everything is fine.
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌풀이 어렵게 생각하려니 더 안풀렸던 문제. 그냥 단순하게 생각하면 간단하다. 시작 영역을 start에 저장하고 칠한 횟수를 1 증가시킨다. section 배열을 돈다. start + 롤러의 길이가 section의 요소보다 작을 경우 그냥 넘어간다. start + 롤러의 길이가 section의 요소보다 클 경우 start의 값을 해당 section으로 이동시키고 칠한 횟수를 1 증가 시킨다. 📌 전체 코드 class Solution { public int solution(int n, int m, in..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 성격 유형과 선택지, 성격 유형 점수를 각각 해시맵에 저장한 후 푼 문제였다. 일단 나는 아래 코드와 같이 한땀한땀 해시맵에 저장하긴 했는데..더 간단하고 효율적인 방법이 있을 수도 있다.🤔 HashMap map = new HashMap(); map.put('R', 0); map.put('T', 0); map.put('C', 0); map.put('F', 0); map.put('J', 0); map.put('M', 0); map.put('A', 0); map.put('N', 0); HashM..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 소수 판별하기 문제를 풀기 전에, 소수를 판별하는 알고리즘을 짜보자! 소수란 1과 자기 자신만을 약수로 가지는 수이다. 즉, 2부터 자기 자신 - 1 까지의 수 중에서 하나라도 약수가 존재한다면 그 숫자는 소수가 아니다. 이대로 코드를 짠다면 다음과 같이 짤 수 있을 것이다. public static boolean isPrime(int n) { if (n < 2) return false; else { for (int i = 2; i < n; i++) { if (n % i == 0) return f..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 처음 작성한 코드 - 오답 이번 문제는 1부터 number까지 각 숫자의 약수의 개수를 구한 후, limit을 초과한다면 그 수를 power로 수정해 약수의 개수의 합을 반환하는 문제이다. 처음 작성한 코드는 기존 테스트 케이스에서는 통과했지만 제출을 하니 시간초과로 오답처리 되었다. 찾아보니 약수의 개수를 세는 부분에서 시간 초과가 난 것이었다. 내가 작성한 코드처럼 약수를 구할 때 1부터 number까지 돌며 모든 경우를 탐색한다면 O(N)의 시간복잡도를 가지게 된다. 만약 제한사항대로 num..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 1단계 - new_id의 모든 대문자를 대응되는 소문자로 치환한다. new_id = new_id.toLowerCase(); 2단계 - new_id에서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)를 제외한 모든 문자를 제거한다. 2단계는 new_id를 문자 하나하나 돌면서 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.)에 해당되지 않으면 지웠다. for (Character c : new_id.toCharArray()) { if (!(c >= 'a' && c = 16..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 데이터를 기준에 맞게 정렬하는 문제였다. 다른 코드들을 보니 람다식과 Comparator가 가장 많이 사용된 것 같다. 내가 작성한 코드의 전체적인 흐름은 다음과 같다. 주어진 ext와 sort_by에 맞는 인덱스 e, s를 구한다. 조건에 맞는 데이터를 넣을 list를 선언한다. data[e]의 값이 val_ext 보다 작을 때만 list에 데이터를 추가한다. sort_by에 해당하는 값을 기준으로 오름차순 정렬한다. list를 int형 배열로 바꾼 후 반환한다. 주어진 ext와 sort_..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 처음에 어떻게 풀어야할지 막막했다. 왜 이런 날짜, 시간 계산이 잘 안되는지..결국 검색을 해서 보고 푼 문제이다. 먼저 변수를 선언해주었다. dayOfTheWeek에는 금요일부터 화요일까지의 요일을 담고(2016년 1월 1일이 금요일이므로), month에는 1월부터 12월까지 각 월의 일수를 담았다. int answer = 0; String[] dayOfTheWeek = {"FRI","SAT","SUN","MON","TUE","WED","THU"}; int[] month = {31, 29,..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 직접 그림을 그려가며 푸니 바로 이해되는 문제였다. 그러나 Math.min()과 Math.max()를 사용해 최솟값과 최댓값을 구하는 과정에서 힌트를 찾아보았다. 머리로는 알아도 막상 코드로 구현하려니 바로바로 되진 않았다. 바탕화면에 파일이 예시처럼 있다면, 드래그 하는 시작점은 (가장 위쪽, 가장 왼쪽) 인 (0, 1) 이고, 끝점은 (가장 아래쪽, 가장 오른쪽) 인 (3, 4) 이다. 0 1 2 3 4 5 1 # 2 # 3 # 정리하면, wallpaper 배열을 이중 for문으로 돌며 ..