일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- replace()
- 백준 2467번 용액 자바 - 이분탐색
- 백준 1541
- hash
- 18111번 마인크래프트 - java 구현
- 백준 1197번 최소 스패닝 트리 - java
- 프로그래머스 java
- mysql hy000 에러
- Java
- 백준 1647번 도시 분할 계획 - java
- HashMap
- 백준 14938번 서강그라운드
- StringBuilder
- toUpperCase
- append
- Stack
- ac 5430번
- dp
- HashSet
- 백준 2473번 세 용액 - java
- 프로그래머스
- 프로그래머스 자바
- kotlin
- 최소 힙 1927
- 백준 3190번
- 백준 1043번 거짓말 - java 분리 집합
- 백준 1806번 부분합 java
- map
- StringTokenizer
- 코틀린기초
- Today
- Total
목록알고리즘/Programmers - Java (43)
말하는 컴공감자의 텃밭

공부허기 싫다~ 괄호 회전하기 먼저 괄호가 왼쪽으로 회전하기 때문에 1 2 3 42 3 4 13 4 1 2 이런식으로 변경을 해줘야 했다.큐를 써도 됐는데, 문제가 쉬워서 "아 그냥 후딱풀자~!"마인드라 오히려 돌아갔다..substring 활용해서 s = s.substring(1) + s.charAt(0); 로 회전시켜줬다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445import java.io.*;import java.util.*; public class Solution { public i..

문제를 잘 읽어보자N의 병사를 갖고 있고, 상대방의 병사가 배열이 주어진다.상대방의 병사를 순서대로 만나고, 싸우면 내 병사는 N -= 상대 병사 수가 된다.여기서 아이템이 있는데, "무적권" 이라는게 있다. 상대방 병사가 몇명이던 그냥 넘어가게 되는데.이 무적권을 적당히 활용하면서 최대한 많은 라운드를 견뎌보자~ 결국 정리하면만나는 상대방들 중 가장 높은 병사들 수 에서 무적권을 사용해야한다. 바로 그리디가 생각났다. 일단 순차적으로 적들을 상대하므로, 무적권 수 만큼 큐에 담아준다.이후로 상대방을 만날때 마다 큐에 들어간 병사 개수에서 가장 적은 병사수와 비교하면서 큐에 담아준다면큐 내부에는 만나는 상대 병사들 중 가장 많은 병사들만 담기게 된다. 예를 들어 내 병사가 10명이고3 5 2 1 7 2..

문제를 읽어보면곡괭이의 종류에 따라 광물을 캐는 효율이 다르다.1개의 곡괭이를 들면 5개의 광물을 캐게 된다.모든 광물을 캐거나 곡괭이가 없을때까지 진행 후, 가장 효율적으로 캐는 방법을 구하는 문제다 바로 그리디가 떠올랐고, 한번 곡괭이를 쓸때 5개의 광물을 캐기 때문에 5개의 광물씩 묶어 그룹화 하고 정렬을 통해 가장 피로도가 높은 집단에서부터 가장 좋은 곡괭이를 소모시키게 작성했다.그룹에는 총 광물의 가치가 몇인지, 다이아, 철, 돌의 개수 를 포함시켰다. groups.sort(Comparator.comparingInt(Group::getValue).reversed()); 다만 예외사항이 존재했다. 만약 광물이 6개고 ["stone", "stone", "stone", "stone", "stone"..

상하좌우 체크하는 간단한 문제다. public static int [] dh = {0, 1, -1, 0}; public static int [] dw = {1, 0, 0, -1}; 범위 체크하고 색이 같은지 확인해서 근처에 같은 색이라면 answer ++ 해주는 문제다. HTML 삽입 미리보기할 수 없는 소스 간단쓰 붕대 감기도 간단한 구현 문제쓰.. 문제만 잘 읽어서 풀면 간단합니다. HTML 삽입 미리보기할 수 없는 소스 lv.0 정리 https://hb-in99.tistory.com/99 프로그래머스 PCCE 기출문제 Lv.0 모음 - 자바 프로그래머스를 안푼지 꽤 됐는데 새로운 유형의 문제가 나와서 흥미가 갔다. PCCE는 Programmers Certified Coding Essential 로 ..

프로그래머스를 안푼지 꽤 됐는데 새로운 유형의 문제가 나와서 흥미가 갔다. PCCE는 Programmers Certified Coding Essential 로 프로그래머스 코딩필수역량인증 시험프로그래밍 문법과 알고리즘에 대한 기초 능력 평가라고 한다. 한가지가 더 있었는데 PCCP라고, 코딩전문역량인증 시험도 존재했다. 난이도가 훨 높았다. 점수에 따라 레벨을 나누어 기업에서 코테를 안봐도 이정도 됩니다~ 하기 좋을거 같았다. [PCCE 기출문제] 1번 / 출력 빈칸을 채우는 형식이었다. 아이신기해 [PCCE 기출문제] 2번 / 피타고라스의 정리 오류를 찾아 한줄 수정하는 문제도 있고 [PCCE 기출문제] 3번 / 나이 계산 [PCCE 기출문제] 4번 / 저축 [PCCE 기출문제] 5번 / 산책 [PCC..

문제가 level 2치고는 간단해 보였다. 구현 문제자나~~ 시간 복잡도만 고려하면 되겠다 싶었다. 일단 문제 그대로 읽으면서 구현해봤다. 뒤에 큰수를 찾으면 max에 저장해두고, 해당값을 answer[i]에 넣는다. max가 본인이 되는 경우를 제외하면 그 사잇값은 max가 뒷큰수가 된다. 찾지 못한경우 boolean으로 구분해 -1을 넣어주었다. HTML 삽입 미리보기할 수 없는 소스 하지만 입력값이 1,000,000 까지기에 n^2은 무리였나보다. 나머지는 맞았으나, tc 20~23번에서 시간 초과가 발생했다. 하지만 다른 방법은 안떠오르고,, 어떻게 최적화 할까 하다가 앞부터 찾으니 큰 수를 하나하나 다 찾아야하는게 오래걸린다 싶었다. 뒤에서 부터 탐색하며, 뒤에 숫자의 뒷큰수에 따라 앞이 정해지..

원하는 목표가 정해진 배열 goal이 주어지고, 단어들이 담긴 배열 두가지가 주어진다. 원하는 문장을 덱 2가지에서 순서대로 뽑아서 만들 수 있다면 Yes 아니면 No 출력하면 된다. 간단쓰~ HTML 삽입 미리보기할 수 없는 소스

귤귤귤~ 귤이 사이즈별로 주어진다. 판매할때 상품성을 위해서 사이즈의 종류가 적은 값을 출력하면 되는문제! 결국 사이즈별로 개수를 정리하고 개수를 더해서 k랑 같을때까지 반복하면 되는 문제겠네오. 다만 범위가 워낙에 커서 O(n) 관리를 잘 해줘야 합니다. 먼저 HashMap으로 중복 없이 귤의 개수를 파악하고, 개수가 많은거부터 더해야 하니까 내림차순으로 정리. 이후 k가 맞으면 answer ++해서 출력하면 되겠숩니당. HTML 삽입 미리보기할 수 없는 소스

두 지도를 겹쳐서 지도를 완성하는게 목표 각 지점은 2진수로 변환하면 벽과 공백으로 나타남. 겹치려면 OR 연산 이용. 고려해야할것 딱히없음. 2진수 연산 후 ### 입력시 왼쪽에서 입력해야한다는점? append가 아니라 insert 사용. HTML 삽입 미리보기할 수 없는 소스