일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스 알고리즘
- 막내의막무가내 안드로이드 코틀린
- 프래그먼트
- 안드로이드 Sunflower 스터디
- flutter network call
- 주엽역 생활맥주
- 막내의막무가내
- 막내의막무가내 코틀린 안드로이드
- 막내의막무가내 목표 및 회고
- 막내의막무가내 SQL
- 막내의막무가내 알고리즘
- 막내의막무가내 rxjava
- 막내의막무가내 안드로이드
- 막무가내
- 막내의 막무가내 알고리즘
- 막내의 막무가내
- 안드로이드 sunflower
- 막내의막무가내 플러터 flutter
- Fragment
- 2022년 6월 일상
- 부스트코스
- 막내의막무가내 플러터
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 일상
- 막내의막무가내 안드로이드 에러 해결
- 안드로이드
- 막내의막무가내 프로그래밍
- 막내의막무가내 코틀린
- 부스트코스에이스
- 주택가 잠실새내
- Today
- Total
목록막내의막무가내 알고리즘 (104)
막내의 막무가내 프로그래밍 & 일상

https://programmers.co.kr/learn/courses/30/lessons/42577?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 LEVEL 2 의 해시문제를 풀어봤습니다. 유형이 해시라고 적혀있어서 HashMap을 사용해서 풀었는데 다른 분들의 풀이를 보니깐 해시로 푸는 사람들이 거의 없는거 같더라고요. 그래서 제가 푼 방식과 다른분이 풀이방식을 같이 남겨봅니다. 저같은 경우는 해쉬맵을 사용해서 각 전화번호들을 추가하고 전화번호부에서 하나씩 번호를 불러오고 불러온 번호를 한자리씩 읽어가며 해쉬맵과 ..

https://programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 프렌즈4 블록 문제를 풀어봤습니다. ㅎㅎ 처음에 기존의 단순 BFS 문제처럼 bfs 함수를 만들고 큐와 while 반복문을 통해 풀려고 했는데 풀다가 아닌 것 같아 지우고 다시 풀었네요. 그런데 블록을 재배치하는 함수인 arrange() 에서 queue.offer(j) 를 i로 바꿔써서 이거 못찾아서 시간을 많이 잡아먹었습니다. ㅠㅠ (신기한게 실행 테스트케이스는 맞는데 제출하기 테스트케이스가 3..

https://programmers.co.kr/learn/courses/30/lessons/12977 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 LEVEL2의 소수 만들기 문제를 풀어봤습니다. ㅎ 풀이 방법은 바로 생각이나고 예외 케이스도 없어서 바로 통과할 수 있었습니다. 중복된 숫자가 없는 3이상 크기의 배열에서 3개의 숫자 조합을 꺼내어(만들어) 그 합이 소수가 되는 개수를 구하는 문제였습니다. 그래서 3중 for문으로 앞에 자리부터 차례대로 모든 조합을 꺼내올 수 있게 구현했습니다. 첫번째는 0번 인덱스에서 마지막-2 인덱스까지, ..

https://programmers.co.kr/learn/courses/30/lessons/12982 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 LEVEL1 예산 문제를 풀어봤습니다. LEVLE1 문제를 처음 풀어봤는데 간단한 문제였습니다. 오름차순 정렬 후 낮은데 부터 예산을 지원해주면 됩니다. 풀이는 다음과 같습니다. import java.util.Arrays; class Solution { public static void main(String[] args) { Solution solution = new Solution(); solu..

https://programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 출발점부터 시작하는게 아닌 도착점 부터 즉 거꾸로 생각하면 쉽게 풀 수 있는 문제였습니다. (dp 문제는 아니였습니다.) 역발상의 중요성(?) 그리고 다른 포인트는 만약 5000이 도작 지점인 경우 5000을 오바해서 도착하면 안된다는 점입니다. 예를들어 2600에서 로켓점프를 쓰면 5200이 되는데 이러면 안된다는거지요. 그래서 도착점 5000부터 시작하여 풀 수 있었습니다. 물론 오바가 가능하면 로켓점프쓰..

https://programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 영어 끝말있기 문제를 풀어봤습니다. 반복문과 문자열을 조작하여 풀이했습니다. 과거의 기록들을 리스트에, 이전(최근) 단어를 String 에 따로 관리하여 현재단어와 비교하여 해결했습니다. 풀이는 다음과 같습니다. import java.util.ArrayList; import java.util.List; class Solution { public int[] solution(int n, String[] words..

https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net LCS란 Longest Common Subsequence 로 최장 부분 수열을 말합니다. 이전 dp 문제들에서도 부분 수열문제들을 풀었었는데 이번 문제는 하나의 문자열 또는 집합이 아닌 두개의 문자열 비교까지 했어야 했습니다. 풀다가 모르겠어서 다음 사이트를 참고하였습니다. https://jaesungbong.tistory.com/21 백준 온라인 저지..

https://www.acmicpc.net/problem/11729 11729번: 하노이 탑 이동 순서 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 옮기려 한다. 한 번에 한 개의 원판만을 다른 탑으로 옮길 수 있다. 쌓아 놓은 원판은 항상 위의 것이 아래의 것보다 작아야 한다. 이 작업을 수행하는데 필요한 이동 순서를 출력하는 프로그램을 작성하라. 단, 이동 횟수는 최소가 되어야 한다. 아래 그림은 원판이 5 www.acmicpc.net 해설을 보고도 이해가 좀 어려운 문제였습니다. 재귀 이해도가 많이 약한 것 같습니다. 참고 https://milkye.t..

https://www.acmicpc.net/problem/2565 2565번: 전깃줄 첫째 줄에는 두 전봇대 사이의 전깃줄의 개수가 주어진다. 전깃줄의 개수는 100 이하의 자연수이다. 둘째 줄부터 한 줄에 하나씩 전깃줄이 A전봇대와 연결되는 위치의 번호와 B전봇대와 연결되는 위치의 번호가 차례로 주어진다. 위치의 번호는 500 이하의 자연수이고, 같은 위치에 두 개 이상의 전깃줄이 연결될 수 없다. www.acmicpc.net 이어 단계별 dp 문제를 풀어봤습니다. LIS 라는 것을 안보고 그냥 풀었었는데 LIS 개념은 다음 사이트나 구글링을 통해 볼 수 있습니다. Longest Increasing Subsequence, 최장증가부분수열 입니다. https://jins-dev.tistory.com/en..

https://www.acmicpc.net/problem/11054 11054번: 가장 긴 바이토닉 부분 수열 첫째 줄에 수열 A의 크기 N이 주어지고, 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (1 ≤ N ≤ 1,000, 1 ≤ Ai ≤ 1,000) www.acmicpc.net 백준의 가장 긴 바이토닉 부분 수열 문제를 풀어봤습니다. 동적계획법1 의 단계별문제이며 이전에 풀었던 문제에서 조금씩 응용을 하며 풀고 있습니다. 이 문제도 한가지의 케이스를 더 생각하고 응용하면 풀리는 문제였습니다. 이전문제는 다음 포스팅에서 참고합니다. https://youngest-programming.tistory.com/265 [알고리즘] 백준 2156 포도주 시식 -dp- https://www.acmicp..

https://programmers.co.kr/learn/courses/30/lessons/12911 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 레벨2 연습문제 다음 큰 숫자를 풀어봤습니다. 문제가 너무 간단하길래 문자열 차례대로 1이 있는지 검사하면 효율성에서 에러가 날줄 알았는데 잘통과하네요. 이진수로 바꾸는 법을 알면 쉽게 풀 수 있는 문제였습니다. class Solution { public static void main(String[] args) { Solution solution = new Solution(); solution.s..

https://www.acmicpc.net/problem/11053 11053번: 가장 긴 증가하는 부분 수열 수열 A가 주어졌을 때, 가장 긴 증가하는 부분 수열을 구하는 프로그램을 작성하시오. 예를 들어, 수열 A = {10, 20, 10, 30, 20, 50} 인 경우에 가장 긴 증가하는 부분 수열은 A = {10, 20, 10, 30, 20, 50} 이고, 길이는 4이다. www.acmicpc.net https://youngest-programming.tistory.com/265 [알고리즘] 백준 2156 포도주 시식 -dp- https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어..

https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규칙이 있다. 포도주 잔을 선택하면 그 잔에 들어있는 포도주는 모두 마셔야 하고, 마신 후에는 원래 위치에 다시 놓아야 한다. 연속으로 놓여 있는 3잔을 모두 마실 수는 없다. 효주는 될 수 있는 대로 많은 양의 포도주를 맛보기 위해서 어떤 포도주 잔을 선택해야 할지 고 www.acmicpc.net 백준 동적계획법1 단계별 풀기 포도주 시식 문제를 풀어봤습니다. dp[] 에 n개의 포도주 최대양을 저장, wine[] 에 n 번 째..

https://programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 레벨2에 있는 문제이고 분류는 안되어있지만 문자열을 조작하는 문제입니다. 처음에 쉽게 풀릴 거 같았는데 예외사항과 실수가 조금 있었습니다. (문제가 좀 빈약한 것 같아요) 예를들어 (제가 잘못이해한거 포함해서) 1. 공백이 연속으로 올 수도 있고 공백다음의 공백은 첫 문자로 치지 않는다. 즉 공백은 문자가 아니라고 생각하면 됩니다. 2. 처음 풀때 저는 제한 조건쪽만 보고 첫 문자가 영문이 아닌 ..