일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 막내의막무가내 목표 및 회고
- 프로그래머스 알고리즘
- 막내의막무가내 rxjava
- 막무가내
- 프래그먼트
- 막내의막무가내 알고리즘
- 막내의막무가내 일상
- 막내의막무가내 코틀린
- 막내의 막무가내
- 막내의막무가내
- 주엽역 생활맥주
- 막내의막무가내 코틀린 안드로이드
- 막내의막무가내 SQL
- 주택가 잠실새내
- 막내의 막무가내 알고리즘
- 안드로이드 Sunflower 스터디
- 막내의막무가내 프로그래밍
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 안드로이드 코틀린
- flutter network call
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 플러터 flutter
- 2022년 6월 일상
- 부스트코스
- 막내의막무가내 안드로이드
- Fragment
- 막내의막무가내 플러터
- 부스트코스에이스
- 안드로이드 sunflower
- 안드로이드
- Today
- Total
목록알고리즘/문자열, 정렬 (14)
막내의 막무가내 프로그래밍 & 일상
https://programmers.co.kr/learn/courses/30/lessons/17683?language=java 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, programmers.co.kr 프로그래머스 방금그곡 문제를 풀어봤습니다. ㅎㅎ 한 단어로 된 음 여러개로 이루어진 악보문장이 아니라 C# 과 같이 뒤에 #이 들어가 2개의 문자로 이루어져 있는 음인 경우 문자열에서 한개씩 불러와 음을 비교하기가 조금 까다로울 수 있습니다. 그래서 두단어로 이루어진 C#과 같은 음을 c로 치환을 하면 더 쉽게 문제를 풀 수..
프로그래머스 LV2 문제를 풀어봤습니다. ㅎㅎ (휴일아침에 알골이라니...할게많다. 이모티콘 기능은 언제생겼찌) 문자열을 조작하는 단순 구현문제였습니다. 요즘 특정 알고리즘 말고 이런 문자열 조작과 시키는대로 단순 구현하는 문제들도 많이 나오는 추세라 중요하다고 생각합니다. 풀이는 주석으로 대신합니다. [Java] class Solution { public int[] solution(String x) { int[] answer = new int[2]; int removeCnt = 0; // 제거된 0의 모든 개수 int convertCnt = 0; //변환 횟수 while (!x.equals("1") && !x.equals("")) { //빈문자열이거나 1이 될때까지 반복 // 1. x의 모든 0을 제거..
www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 백준 정렬 단계별풀기 마지막 문제인 좌표 압축문제를 풀어봤습니다. ㅎㅎ 분명 정렬 마지막문제를 풀었던 것 같은데 새로 생긴건지 잘 모르겠네요 흠.. 숫자들이 있으면 그것을 정렬했을때의 자신의 좌표값으로 압축하면 되는 문제였습니다. 같은 숫자인 경우는 가장 앞에 있는 좌표값으로 통일시킵니다. 풀이는 다음과 같습니다. [Java] import java.util.Ar..
programmers.co.kr/learn/courses/30/lessons/17686 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램�� programmers.co.kr Tail은 비교하지 않는거에 주의해야한다.... 이걸로 삽질 엄청네여 문제를 제데로 읽는 습관을 길러야겠습니다. 풀이 [Java] import java.util.Arrays; class Solution { public static void main(String[] args) { Solution solution = new Solution(); solution.so..
https://www.acmicpc.net/problem/10814 10814번: 나이순 정렬 온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을 � www.acmicpc.net 백준 단계별풀기 정렬 마지막 단계인 나이순 정렬을 풀어봤습니다. 간단한 문제였습니다. 풀이는 다음과 같습니다. [Java] import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; class Main { public static void main(String[] args) { Scanner sc = new Scan..
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://programmers.co.kr/learn/courses/30/lessons/12951 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 레벨2에 있는 문제이고 분류는 안되어있지만 문자열을 조작하는 문제입니다. 처음에 쉽게 풀릴 거 같았는데 예외사항과 실수가 조금 있었습니다. (문제가 좀 빈약한 것 같아요) 예를들어 (제가 잘못이해한거 포함해서) 1. 공백이 연속으로 올 수도 있고 공백다음의 공백은 첫 문자로 치지 않는다. 즉 공백은 문자가 아니라고 생각하면 됩니다. 2. 처음 풀때 저는 제한 조건쪽만 보고 첫 문자가 영문이 아닌 ..
https://programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스 프로그래머스 문자열 압축 -2020 KAKAO BLIND RECRUITMENT- 를 풀어봤습니다. 처음 생각난게 split 특성으로 푸는거여서 그대로 풀었습니다. 중간에 다른 쉬운방법도 생각났는데 외골수 성향이 있어서 더럽게 풀어도 이대로 풀어버렸네요.. ㅠ 너무 더럽게 풀었다는... 늦었으니 내일 생각나면 다른 방법으로 풀어볼까 합니다. 자바 문자열 split의 다음과 같은 특성을 이용했습니다...
https://programmers.co.kr/learn/courses/30/lessons/42747 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제를 이해하기 어려웠습니다... ㅠㅠ 특히 문제에서 나머지 논문이 h번 이하 인용되었다면을 -> h번 이하 인용된 논문이 h편 이하의 개수여야한다로 잘못이해해서 엄청 삽질했습니다. (h번 이상 인용된 논문이 h편 이상의 개수인 것만 만족하면 되는데 말이죠..) 매번 문제를 이상하게 해석하는 경우가 많은데 정신 똑바로 차려야겠습니다... [풀이] ex) 3, 0, 6, 1, 5 => 오름차순 정렬 0, 1, ..
https://programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스의 가장 큰 수를 풀었다. 처음에는 별생각없이 자리수 비교해줄려고 다음과 같이 비교해주었었다. import java.util.ArrayList; import java.util.Collections; class Solution { public static void main(String[] args) { Solution solution= new Solution(); solution.solution(ne..
https://www.acmicpc.net/problem/11650 11650번: 좌표 정렬하기 첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다. www.acmicpc.net import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int size = sc.nextInt(); MyXY[] myXY = new M..
https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 정렬문제를 풀어봤다. 처음에 바로 풀었는데 시간초과, 메모리 초과 등의 에러가 났다. 먼저 아래 두 코드는 해당 에러들이 발생한 코드들이다. (스캐너, 링크드리스트 사용으로 인한...) [실패코드] import java.util.ArrayList; import java.util.Collections; import java.util.Scanner; public class Main { public static void..
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); int N = Integer.parseInt(in.readLine()); ArrayList arrayList = new ArrayList(N); for(int i=0 ; i
public int[] solution(int[] array, int[][] commands) { ArrayList list = new ArrayList(); //실질적으로 데이터를 담고 사용할 리스트 List tmpList = new ArrayList(); int result[] = new int[commands.length]; //결과값은 commands의 첫번째 배열크기만큼이다. //초기 데이터 담기 for (int v : array) { list.add(v); } for (int i = 0; i < commands.length; i++) { //결과값의 총 개수만큼 반복 //규칙값 3개 받아옴 int firstIndex = commands[i][0]; int endIndex = commands[i..