| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- mysql
- RESIGNAL
- react
- Error Handling
- dangerouslySetInnerHTML
- 자바
- 알고리즘
- 스레드
- javascript
- MVMM
- AI
- 파이썬
- join
- Google Cloud Skills Boost
- 조건문
- 개념
- 백준
- Gemini
- 유데미코리아
- databse
- sql
- 자바의 정석
- 회고
- 스터디윗미
- GoogleCloudConsole
- 유데미
- 프로그래머스
- INSERT SELECT
- Java
- til
- Today
- Total
목록Tech Notes & Growth/Algorithm & Problem Solving (8)
휘적이는 기록공간
문제유형그리디 + 완전탐색(시뮬레이션) + 구현 문제민수는 다양한 지폐를 수집하는 취미를 가지고 있습니다. 지폐마다 크기가 달라 지갑에 넣으려면 여러 번 접어서 넣어야 합니다. 예를 들어 지갑의 크기가 30 * 15이고 지폐의 크기가 26 * 17이라면 한번 반으로 접어 13 * 17 크기로 만든 뒤 90도 돌려서 지갑에 넣을 수 있습니다. 지폐를 접을 때는 다음과 같은 규칙을 지킵니다.지폐를 접을 때는 항상 길이가 긴 쪽을 반으로 접습니다.접기 전 길이가 홀수였다면 접은 후 소수점 이하는 버립니다.접힌 지폐를 그대로 또는 90도 돌려서 지갑에 넣을 수 있다면 그만 접습니다.지갑의 가로, 세로 크기를 담은 정수 리스트 wallet과 지폐의 가로, 세로 크기를 담은 정수 리스트 bill가 주어질 때, 지갑..
버블 정렬 또는 거품 정렬이라고 부른다. 모든 인접한 두 데이터를 차례대로 비교해서왼쪽 데이터가 더 큰 경우에는 오른쪽 데이터와 자리를 바꾸는 과정을 반복해서 정렬을 수행하는 방식 비교를 진행하는 방향왼쪽에서 오른쪽으로 진행가장 큰 값을 찾아서 오른쪽 끝에 위치시킴오른쪽에서 왼쪽으로 진행가장 작은 값을 찾아 왼쪽 끝에 위치시킴 버블 정렬 식BubbleSort(A[], n){ for(i=0; i A[j+1]) // '왼쪽 데이터 > 오른쪽 데이터'일 경우 A[j]와 A[j+1]의 자리 바꿈; return (A);} 버블 정렬 예시(진행 방향이 왼쪽에서 오른쪽인 경우) 버블 정렬의 성능 for(i=0; i for문은 0, ..., (n-2)-> (n-1) 회 총 두 번의 for문이 있기에 성능은 ..
문제유형문자열 문제문자열 s의 길이가 4 혹은 6이고, 숫자로만 구성돼있는지 확인해주는 함수, solution을 완성하세요. 예를 들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다. 제한 조건s는 길이 1 이상, 길이 8 이하인 문자열입니다.s는 영문 알파벳 대소문자 또는 0부터 9까지 숫자로 이루어져 있습니다.입출력 예"a234"false"1234"true 문제 도출 방법 로직 두개가 필요1. 문자열 s의 길이가 4 혹은 6 확인2. 숫자로만 구성돼있는지 확인 이렇게 두 개로 나눠진다고 보았다.첫 번째 로직의 문자열 길이 확인은 length()를 사용해서 체크해야겠다 생각했다. 문제는 두 번째 로직. 처음 생각한 방법처음에는 한 번에 타입을 변환해버리면 편하..
문제 유형반복문 문제N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다.입력첫째 줄에 N이 주어진다. N은 1보다 크거나 같고, 9보다 작거나 같다. 출력출력형식과 같게 N*1부터 N*9까지 출력한다. 예제 입력 2 예제 출력 2 * 1 = 22 * 2 = 42 * 3 = 62 * 4 = 82 * 5 = 102 * 6 = 122 * 7 = 142 * 8 = 162 * 9 = 18 문제 도출 방법특정 값을 입력 받고, 그 값을 기준으로 비슷한 유형이 출력되는 결과를 얻어야한다. 이때 비슷한 유형의 출력들이 여러 개가 나오는 형태라면 반복문이 확실하다.생각한 방법스캐너를 사용해서 입력 값을 받는다.그리고 for문을 1부터 9까지 돌리되 출력되는 것을 반복문 ..
문제유형문자열 문제프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건phone_number는 길이 4 이상, 20이하인 문자열입니다.입출력 예phone_numberreturn"01033334444""*******4444""027778888""*****8888" 문제 도출 방법핸드폰번호의 길이는 고정적이지 않다.뒷자리 4개는 고정적으로 공개되어야한다.공개되지 않는 값 외에는 마스킹처리가 되어야한다. -> 핸드폰 번호의 길이에서 -4를 제외한 나머지는 * 문자로 치환 핸드폰 번..