| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- 언더라이터
- 너비탐색
- 백준
- 조합
- 멀티스레드
- dfs
- 프로그래머스
- backjoon
- Android
- 네트워크
- 백준 알고리즘
- 데이터베이스
- 모바일
- 개발
- CKLU
- 금융IT
- Java
- 안드로이드
- 익명객체
- BFS
- 삼성sw문제
- 자바
- 삼성SW테스트
- 재귀함수
- 알고리즘
- dp
- 다이나믹 프로그래밍
- IT
- 현대오토에버 코딩테스트
- 익명클래스
- Today
- Total
목록알고리즘 (23)
Limky 삽질블로그
https://www.welcomekakao.com/learn/courses/30/lessons/42839?language=java 코딩테스트 연습 - 소수 찾기 | 프로그래머스 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbers는 0~9까지 숫자만으로 이루어져 있습니다. 013은 0, 1, 3 숫자가 적힌 종이 www.welcomekakao.com 문제를 보면...숫자를 몇개 줄테니 ..
백준 시뮬레이션 문제 #17140- 이차원 배열과 연산 https://www.acmicpc.net/problem/17140 생각보다 간단한 축에 속하는 시뮬레이션 문제! 이 문제의 포인트는 "한 행 또는 열에 있는 수를 정렬하려면, 각각의 수가 몇 번 나왔는지 알아야 한다. 그 다음, 수의 등장 횟수가 커지는 순으로, 그러한 것이 여러가지면 수가 커지는 순으로 정렬한다. 그 다음에는 배열 A에 정렬된 결과를 다시 넣어야 한다. 정렬된 결과를 배열에 넣을 때는, 수와 등장 횟수를 모두 넣으며, 순서는 수가 먼저이다." 이부분을 어떻게 비교하고 정렬을 할 것인가이다. 나는 compareTo를 커스터마이징해서, 비교하여 정렬을 하도록 소스를 짰다. 전체소스 import java.util.Arrays; impo..
삼성 SW 모의 테스트 #2105 - [모의 SW 역량 테스트] 디저트 카페 https://www.swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5VwAr6APYDFAWu 사용한 개념 1. BFS탐색 2. 시뮬레이션 이 문제에서 BFS탐색을 하는데 있어 이전 탐색 방향에 따라, 현재 탐색 방향을 지정해주는 것이 포인트입니다. 즉, 문제에서 주어진 4가지 대각선 방향에 있어 이전 방향이 ↘ 방향이면, 현재 탐색할 방향은 ↙ OR ↘ 입니다. 이런식으로 각각의 이전 방향에 대한 현재 탐색 방향을 지정해줘서 사각형을 그릴 수 있도록 만들어 줍니다. 아래는 전체소스 입니다. package SWE; import java.io.Buff..
java로 순열, 중복순열, 조합, 중복조합 구하기 기본 베이스는 LinkedList 로 구현하도록 했습니다. 더 자세한 설명을 원하실 경우 아래링크를 참고하세요~ 2019/03/23 - [프로그래밍/Java] - [JAVA] 조합,중복조합,순열,중복순열 소스 아래는 전체 소스입니다. package CASEOFNUMBER; import java.util.LinkedList; import java.util.Scanner; public class CaseOfNumber2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int r = sc.nextInt(); int arr[] ..
c++ 선택정렬, 삽입정렬, 버블정렬 - 삽입정렬 1. 2번째 요소를 선택하고, 2번째보다 작은 요소들(1)과 비교해서 선택한 2번째 요소 값이 들어갈 위치를 찾는다. 2. 3번째 요소를 선택하고, 3번째보다 작은 요소들(2,1)과 비교해서 선택한 3번째 요소 값이 들어갈 위치를 찾는다. 3. 4번째 요소를 선택하고, 4번째보다 작은 요소들(3,2,1)과 비교해서 선택한 4번째 요소 값이 들어갈 위치를 찾는다. ...끝까지 - 선택정렬 1. 모든 배열을 탐색해 제일 작은 값의 위치를 찾고 1번째 자리에 위치시킨다. 2. 1번째 위치를 제외하고 모든 요소를 탐색해, 2번째로 작은 값을 찾고 2번째에 위치시킨다.. 3. 1,2번째 위치를 제외하고 모든 요소를 탐색해, 3번재로 작은 값을 찾고 3번째에 위치킨..
백준 시뮬레이션 문제 #16235- 나무재태크 https://www.acmicpc.net/problem/16235 사용한 개념 시뮬레이션 문제입니다. 문제에서 주어진 조건에 따라 각 단계별 로직을 짜고 전체 프로세스를 만드는 문제입니다. 별다른 개념은 필요하지 않습니다. if문과 for문 등등의 조건/반복문을 이용해서 자기 스타일대로 짜면 되는것이죠.. 이 문제에서 힘들었던 점은 시간초과를 어떻게 방지하냐 입니다.. 제가 삽질하면서 느꼈던 내용은 아래와 같습니다. 1. ArrayList보단 LinkedList가 성능이 더 좋다. 2. LinkedList를 자주 add하고 poll하는것은 많은 스택오버플로우를 낼 수 있다. 따라서 get으로 접근하거나 iterator를 적절히 사용하는 것이 성능에 좋다. ..
백준 DFS 문제 #16234- 인구이동 https://www.acmicpc.net/problem/16234 사용한 개념 DFS 문제입니다. BFS로도 할 수 있을 것 같은데, 저는 DFS 재귀 연습도 할겸 DFS 했습니다. 연합을 이룰 수 있는 국가를 구하고, 연합 국가의 총 인구수와 국가를 나누는 간단한 DFS문제입니다. 제가 생각한 프로세스는 다음과 같습니다. 1. DFS로 조건에 맞는 연합국가를 구한다. 2. DFS탐색시 조건에 맞는 국가는 Sticker를 붙여서 연합국을 구별하도록 한다. 3. 각 연합국안에서 인구이동 실시. 4. 1-3 계속 반복...더이상 인구이동이 없을 때까지... 딱히 어려운건 아니였으나...시간차를 두고 풀어봤는데, 다르게 소스를 짰네요...ㅎㅎ.. 간혹 시간초과가 뜨는..
백준 조합 문제 #14889 - 스타트와 링크 https://www.acmicpc.net/problem/14889 사용한 개념 기본적으로 조합을 구하는 문제입니다. 순열과 조합에 대해서 기본적으로 구별하고 구할 수 있어야합니다. 순열과 조합에 대해서 잘 모르겠으면...아래 링크를 참고하세요.. 2019/03/23 - [프로그래밍/Java] - [JAVA] 조합,중복조합,순열,중복순열 소스 제가 생각한 프로세스는 다음과 같습니다. 1. 일단 스타트팀만 구한다. (조합) 2. 스타트 팀 팀원을 구하면, 자동으로 링크 팀을 구할 수 있음. 3. 각 팀 안에서 2명씩 짝지어, 능력치를 구한다. 4. 3번에서 구해진 각 팀의 능력치의 차이가 제일 작으면 계속 갱신... 5. 1-4 번 모든 경우에 수를 다 구한다..