728x90 IT48 [프로그래머스] [자바] 해시/베스트앨범 문제 출처 https://programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr 1. 풀이 접근 ㆍ 해시사용해서 재생횟수 확인 ㆍ Comparator 사용하여 클래스의 순서를 정렬함 2. 소스코드 import java.util.*; class Music{ String g; int p; int o; } class prior{ String n; int p; } class Solution { public int[] solution(S.. 2022. 1. 26. [Python] 주피터 파일(.ipynb) -> 파이썬 파일(.py) 변환 ** 윈도우에서 변환할때 python -m ipython nbconvert --to script *.ipynb로 하면됌 Install ipython libraries (Of course, you can skip if already installed.) > pip install ipython > pip install nbconvert Convert single file > ipython nbconvert — to script abc.ipynb You can have abc.py Convert multi files > ipython nbconvert — to script abc.ipynb def.ipynb abc.py, def.py > ipython nbconvert — to script *.ipynb ab.. 2021. 7. 8. [Python] 라즈베리파이(리눅스)에 PyQt, Qt Designer 설치 1. 서론 PyCharm에서 개발한 PyQt 프로그램을 라즈베리파이에서 옮겨서 동작 테스트를 진행하려고 하는데, 그 와중에 문제 생기면 바로 라즈베리파이 안에서 수정하려고 간단한 개발환경 설치하려고 함 라즈베리파이에도 PyCharm 설치할 수 있는데 IDE가 매우 무거워서 거의 동작 불가능하다고 판단 2. 본문 처음에 PyCharm에서 pip로 설치해서 사용했었어서 그럼되겠지하고, pip로 설치하다가 계속 에러나서 뭔가 했더니 apt로 설치하여야 했음 sudo apt-get install python3-pyqt5 qttools5-dev-tools 명령어로 설치 3. 결론 (테스트 진행) 정상적으로 설치 됨. 옮긴 파일 실행해보니 실행됨. 근데 기능 실행하려고 하니 창이 그냥 죽어버려서 추가적인 디버깅은 .. 2021. 7. 6. [Everything] 파일 검사 시 정규표현식으로 한글파일 검색 [ㄱ-ㅎ|ㅏ-ㅣ|가-힣].txt - txt는 확장자 원하는거에 따라서 바꾸면됌. - *(모든파일) 도 가능 - 메뉴 - 검색 - 정규식으로 검색 활성화 2021. 6. 30. [Python] Hex <-> Float, Double, Ascii, Decimal 변환 python 3.7 기준 - 소스 import struct import numpy as np import binascii #float #0x42161168 #37.517 # double #0x4042c22d0e560419 #37.517 hex_encoded = "42161168" hex_encoded2 = "4042c22d0e560419" def float16_to_hex(f): return hex(struct.unpack(' 2021. 5. 12. [DB] [MySQL] 새 계정 추가 및 원격 접속 허용 새 계정 추가 : create user 'ID'@'%' identified by '패스워드' - %는 모든 IP, %대신 IP 주소 작성하면 그 IP에서만 접속 허용, localhost로 작성하면 로컬에서만 접속 - 기본적으로 생성한 루트는 로컬에서만 접속 가능 모든 권한 부여 : grant all on *.* to 'ID'@'%' -> flush privileges로 권한 커밋 2021. 5. 10. [SWEA] [자바] 1953. 탈주범 검거 문제 출처 swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PpLlKAQ4DFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 풀이 접근 ㆍ 파이프 리스트 정리 ※ 상 : 0 , 하 : 1 , 좌 : 2 , 우 : 3 - 1번은 상하좌우 : "0123" - 2번은 상하 : "01" - 3번은 좌우 : "23" - 4번은 상우 : "03" - 5번은 하우 : "13" - 6번은 하좌 : "12" - 7번은 상좌 : "02" ㆍ 현재 탈주범의 위치를 시작으로 BFS탐색 시작 ※ BFS 탐색 시 소요 시간을 기준으로 L까지 잘.. 2021. 4. 6. [SWEA] [자바] 1949. 등산로 조성 문제 출처 swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PoOKKAPIDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 풀이 접근 ㆍ 가장 높은 봉우리를 리스트에 저장 ㆍ 모든 지도의 위치에서 1부터 K까지 등산로를 깎음 ㆍ 저장해둔 가장 높은 봉우리에서 출발해서 가장 낮은곳 까지 이동하는 거리를 BFS로 체크 ㆍ 가장 멀리 이동한 거리를 저장하고 최대값 산출을 위해 비교 후 출력 2. 소스코드 github.com/Choi-JinYeong/Solve_Alg/tree/master/Solve_Algs_SWEA/src/.. 2021. 4. 4. [SWEA] [자바] 5656. 벽돌 깨기 문제 출처 swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRQm6qfL0DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 풀이 접근 ㆍ 벽돌을 떨어뜨릴 수 있는 경우의 수를 순열로 산출 ㆍ 순열에 맞추어 벽돌 깨기 시작 - 순열로 뽑아낸 가로 위치에서 처음으로 만나는 벽돌세로 위치 산출 - 만약 세로에 깰 벽돌이 없으면 스킵 ㆍ 있으면 연쇄작용으로 부심 - BFS이용해서 부심. 탐색 시 부시는 벽돌의 숫자-1만큼 반복해서 상하좌우 탐색해야 됨 - 부실 수 있는 벽돌의 경우 따로 배열을 활용해서 체크 ㆍ 부실 수 있는.. 2021. 4. 3. [백준] [자바] 3190번 : 뱀 출처 : www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 1. 풀이 접근 ㆍ 현재 바라보는 방향으로 이동 (8:상, 6:우, 4:좌, 2:하) ※ 아직 좌표는 업데이트하기 전! 앞으로 향할 위치에 대해서 다른 변수를 이용해 저장 ㆍ 지도(범위 안에 있는지) 체크 ==> flag1 ㆍ 뱀이 너무 길어서 몸끼리 부딛쳤는지 확인 ==> flag2 ㆍ 조건문 확인 1) flag1 == true && flag2 == true - 머리가 있는 위치에 사과가 있는지 확인 == .. 2021. 4. 1. [백준] [자바] 17144번 : 미세먼지 안녕! 문제 출처 www.acmicpc.net/problem/17144 17144번: 미세먼지 안녕! 미세먼지를 제거하기 위해 구사과는 공기청정기를 설치하려고 한다. 공기청정기의 성능을 테스트하기 위해 구사과는 집을 크기가 R×C인 격자판으로 나타냈고, 1×1 크기의 칸으로 나눴다. 구사 www.acmicpc.net 1. 풀이 접근 ㆍ 미세먼지 확산 ※ 미세먼지 확산 할 때 옆에 있는 칸이 서로 미세먼지가 있어도 각각이 확산되면서 서로 영향을 끼침 - 그래서 각각에 대한 값을 구한다음에 새로운 배열에 저장해서 보관하고 있다가 모든 프로세스가 끝나면 원래 배열에 덮어 씌우는 방식으로 해결 ㆍ 미세먼지 청정 - 입구에서부터 한칸씩 밀려서 회전 후 되돌아와 없어짐, 각각의 위치에 맞춰서 배열 회전 시킴 ※ 회전할 때.. 2021. 3. 29. [백준] [자바] 16236번 : 아기 상어 문제 출처 www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 1. 풀이 접근 ㆍ 현재 먹이를 먹을 수 있는지 확인 ( 먹이 못 먹을 경우 종료 후 시간 출력 ) ㆍ 현재 위치로 부터 가장 가까운 먹이 찾기 (BFS 탐색) - 나보다 큰 먹이는 지나가지 못함 ( 벽 같은 역할 ) - 나의 크기와 같거나 작으면 지나 갈 수 있음 ※ 물고기를 현재 크기 만큼 먹어야 크기 성장함. Ex. 상어 크기 3 -> 3번먹어야 4로 진화 ㆍ 가장 가까운 곳에 먹을 수 .. 2021. 3. 26. [백준] [자바] 10250번 : ACM 호텔 문제 출처 www.acmicpc.net/problem/10250 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 1. 풀이 접근 ㆍ 배열로 호수를 매핑해서 접근한다. ㆍ 호수가 604, 1010호 처럼 중간에 0이들어가거나 1자리로 구성될 경우에 대해서 예외처리 해주면 난이도는 굉장히 쉬운 문제이다. ㆍ 구현할 때 나머지 ( % )를 사용해서 구할 경우 나머지가 0으로 떨어지는 경우에 대해서 예외처리가 필요하다. 2. 소스코드 github.com/Choi-JinYeong/Solve_Alg/tree/master.. 2021. 3. 26. [백준] [자바] 16234번 : 인구 이동 문제 출처 www.acmicpc.net/problem/16234 16234번: 인구 이동 N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에는 A[r][c]명이 살고 있다. 인접한 나라 사이에는 국경선이 존재한다. 모 www.acmicpc.net 1. 풀이 접근 ㆍ 유니온으로 나눌 구역을 찾음. 이 때 기준은 서로의 차이가 L보다 크고 R보다 작아야 함. ※ 이 때 처음 찾는곳을 기준으로 DFS로 같은 구역을 지정해야 함. ㆍ 구역이 찾아지면 구역의 평균값을 구해서 같은 구역일 경우 값 덮어쓰기. ㆍ 더이상 반복 할 수 없을 때 까지 수행 2. 소스코드 github.com/Choi-JinYeong/Solve_Alg/tree/ma.. 2021. 3. 25. [백준] [자바] 14503번 : 로봇 청소기 문제 출처 www.acmicpc.net/problem/14503 14503번: 로봇 청소기 로봇 청소기가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오. 로봇 청소기가 있는 장소는 N×M 크기의 직사각형으로 나타낼 수 있으며, 1×1크기의 정사각형 칸으로 나누어 www.acmicpc.net 1. 풀이 접근 · 로봇 청소기가 청소를 함 · 청소 한 뒤에 내가 바라보는 방향을 기준으로 왼쪽에 청소가 가능한지 체크 1. 청소가 가능한가 1-1. 청소 가능 - 왼쪽으로 회전 - 왼쪽으로 이동 - 1번으로 돌아감 - 청소한 구역의 위치를 표기하고, 지도에서 다른 숫자로 매칭 1-2. 청소 불가능 - 2번으로 이동 2. 네 방향을 확인 2-1. 네 방향이 다 청소가 되어 있거나, 벽으로 막혀 있.. 2021. 3. 24. 이전 1 2 3 4 다음 728x90