본문 바로가기

전체 글147

[백준] 13458 - 시험 감독 [Python(파이썬)] '삼성 SW 역량 테스트' 기출 문제 입니다. 😀 문제 👉 13458번: 시험 감독 1. 문제 총 N개의 시험장이 있고, 시험장에는 여러 응시자와 총감독관 및 부감독관이 존재할 수 있다. 각 시험장에는 응시자의 수 Ai와 필수적으로 1명의 총감독관이 필요하다. (부감독관은 필수X) 총 감독관이 감시할 수 있는 응시자는 B명, 부 감독관은 C명이다. 총 감독관은 각 시험장에 오직 1명이다. 각 시험장마다 응시생을 모두 감독하기 위해 필요한 감독관의 최소 수를 출력한다. 2. 풀이 수학을 이용한 문제 풀이 각 시험장의 응시생에서 기본적으로 1명의 총 감독관이 감시할 수 있는 B를 뺀다. (총 감독관 1명은 필수) Ai - B 나머지 응시생을 C로 나눈 후 나머지가 있을 경우 1을 더하여 각 시험장에 필요한 .. 2021. 11. 22.
[백준] 3190 - 뱀 [Python(파이썬)] '삼성 SW 역량 테스트' 기출 문제 입니다. 😀 문제 👉 3190번: 뱀 1. 문제 몇몇 칸에 사과가 위치한 N*N 보드 위에서 뱀이 이동한다. 뱀이 사과를 먹으면 뱀 길이가 늘어나고, 벽 또는 자신의 몸과 부딪히면 게임이 끝난다. 뱀의 첫 위치는 맨위 맨좌측이며 길이는 1이다. 뱀의 처음은 오른쪽을 향한다. 뱀은 매 초마다 이동을 하는데 다음과 같은 규칙을 따른다. 먼저 뱀은 몸길이를 늘려 머리를 다음칸에 위치시킨다. 만약 이동한 칸에 사과가 있다면, 그 칸에 있던 사과가 없어지고 꼬리는 움직이지 않는다. 만약 이동한 칸에 사과가 없다면, 몸길이를 줄여서 꼬리가 위치한 칸을 비워준다. 즉, 몸길이는 변하지 않는다. 주어진 뱀으 방향 변환은 왼쪽(L), 오른쪽(D)이 있다. 게임이 몇 초에 끝나는지 출.. 2021. 11. 22.
[백준] 13460 - 구슬 탈출 2 [Python(파이썬)] '삼성 SW 역량 테스트' 기출 문제 입니다. 😀 문제 👉 13460번: 구슬 탈출 2 1. 문제 N*M 크기의 보드에서 기울이는 동작을 통해 파란 구슬은 냅두고 빨간 구슬만 구멍으로 뺀다. '.'은 빈 칸, '#'은 벽, 'O'는 구멍, 'R'은 빨간 구슬, 'B'는 파란 구슬을 의미한다. 기울이는 동작은 동,서,남,북 4방향이다. 모든 보드의 가장자리에는 모두 벽('#')이 있다. 구멍의 개수는 한 개 이며, 빨간 구슬과 파란 구슬은 항상 1개가 주어진다. 최소 몇 번 만에 빨간 구슬을 구멍을 통해 빼낼 수 있는지 출력한다. 만약, 10번 이하로 움직여서 빨간 구슬을 구멍을 통해 빼낼 수 없으면 -1을 출력한다. 2. 풀이 BFS 를 이용한 문제 풀이 (최소 거리 -> BFS -> 큐) 초기 각 구슬.. 2021. 11. 22.
[백준] 12100 - 2048 (Easy) [Python(파이썬)] '삼성 SW 역량 테스트' 기출 문제 입니다. 😀 문제 👉 12100번: 2048 (Easy) 1. 문제 N*N 크기의 보드에서 전체 블록을 상하좌우 네 방향 중 하나로 이동시킨다. 이동할 때, 같은 값을 가진 두 블록이 충돌하면 두 블록을 하나로 합치고 값을 2배로 바꾼다. 이미 합쳐진 블록은 다른 블록과 다시 합쳐질 수 없다. 최대 5번 이동해서 만들 수 있는 가장 큰 블록의 값을 출력한다. 2. 풀이 시뮬레이션 과 DFS를 이용한 문제 풀이 보드가 상,하,좌,우로 움직이는 함수 구현 현재 보드에서 최대값을 찾는 함수 구현 DFS 함수 구현 3. 코드 import copy N = int(input()) B = [list(map(int, input().split())) for _ in range(N)].. 2021. 11. 22.
Mac(맥) M1에 Miniforge로 Python(파이썬), Tensorflow 설치하고 GPU 사용하기 들어가기 전 homebrew 설치 만약 homebrew를 설치하지 않았다면 Homebrew 사이트를 통해 간단히 설치 할 수 있다. xcode-select 설치 xcode-select --install 1. Miniforge 설치 (Apple Silicon) homebrew 를 이용한 설치 brew install miniforge 많은 블로그 및 문서를 보면 homebrew를 통해 설치하면 된다 했는데 나의 경우 이상하게 brew install miniforge 를 할 경우 x86버전이 설치되어 나중에 tensorflow가 제대로 설치되지 않아 개인적으로 다음 방법을 이용하는 것을 추천한다. sh파일을 통한 설치 Miniforge3-MacOSX-arm64.sh 해당 파일을 설치 후 파일을 설치한 경로에서.. 2021. 11. 22.
Mac(맥) capslock(캡스락) 길게 누르기(대문자) 기능 끄기 capslock을 통해 방향키를 사용할 경우 capslock을 오래 누르면 capslock에 불이 들어오면서 문자를 대문자로 변경해주는 기능을 수행한다. 난 이러한 기능이 매우 불편해 이 기능을 끄고자 이 글을 쓴다. 1. 키보드 설정으로 들어가기 2. 키보드 옵션에서 보조키 클릭 3. Caps Lock 작업 없음으로 변경 키보드 선택 : Karabiner를 사용할 경우 Karabiner를 선택하면 된다. 아니면 Apple Keyboard를 선택한다. References macos - How to disable long press Caps Lock feature in Mac keyboard? - Ask Different 🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다. 잘못된 부분이 있다면 과감하게 지적.. 2021. 11. 22.
ssh에서 scp 명령어로 데이터(파일) 전송하기 1. 옵션 -P : 포트 지정 -p : 원본 파일 수정/사용시간 및 권한을 유지 -r : 하위 디렉토리 및 파일 모두 복사 2. local -> server scp [옵션] [전송할 파일] [ssh ID]@[ssh IP]:[전송할 경로] Ex 1) 옵션 : X 전송할 파일 : desktop 폴더의 archive.zip ssh ID : user ssh IP : 127.0.0.1 전송할 경로 : /remote/directory scp /desktop/archive.zip user@127.0.0.1: /remote/directory/ Ex 2) 포트가 22가 아닌 33일 경우 옵션 : -P 33 전송할 파일 : /desktop폴더의 archive.zip ssh ID : user ssh IP : 127.0.0... 2021. 11. 22.
배열의 기초와 Quick sort Array (배열) sorting : O(nlogn) stable : 정렬 후 기존의 순서 유지 O merge unstable : 정렬 후 기존의 순서 유지 X quick, heap search : O(n) binary search : O(logn) Quick sort (unstable) pivot을 정한 후 나머지 element를 partitioning 한다. Pivot보다 큰 값은 오른쪽 작은 값은 왼쪽에 위치시킨다. 다음 단계에서도 마찬가지로 pivot을 정한 후 partitioning 한다. pivot을 정하는 방법 중간 값 설정 중간에서 아무 값을 설정 후 맨 끝으로 이동 맨 끝값으로 설정 time complexity Best : O(nlogn) Worst : O(n2) References 인터.. 2021. 11. 22.
IntelliJ 유용한 약자 모음 psvm public static void main(String[] args) { }sout System.out.println();itar for (int i = 0; i < numbers.length; i++) { int number = numbers[i]; }iter for (int number : numbers) { } References 🏋🏻 개인적으로 공부한 내용을 기록하고 있습니다. 잘못된 부분이 있다면 과감하게 지적해주세요!! 🏋 2021. 11. 22.