728x90
반응형

Tech 90

[BOJ] 백준 18428 감시 피하기 c++ (백트래킹)

문제 출처 : https://www.acmicpc.net/problem/18428 18428번: 감시 피하기 NxN 크기의 복도가 있다. 복도는 1x1 크기의 칸으로 나누어지며, 특정한 위치에는 선생님, 학생, 혹은 장애물이 위치할 수 있다. 현재 몇 명의 학생들은 수업시간에 몰래 복도로 빠져나왔는데, 복 www.acmicpc.net 풀이 dfs로 장애물을 찾고 해당 경우가 조건에 맞는지 판별하는 대표적인 백트래킹 문제이다. 처음 입력을 받을때 teacher(T), none(X)를 vector에 저장해두고 none 자리의 경우의 수를 dfs로 찾는다. 이때 다른 문제와 좀 다른 점은, vector에 push와 pop을 하는대신 바로 arr에 O와 X문자열을 대입해준 점이다. 3개를 찾으면 check_av..

Tech/Algorithm 2023.07.05

[BOJ] 백준 1021 회전하는 큐 c++ (deque)

문제 출처 : https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net 풀이 이 문제는 덱을 사용하는 문제이다. 2번 방법(왼쪽으로), 3번 방법(오른쪽으로) 중 짧은 거리를 구해서 해당 방법대로 push, pop을 반복한다. 이때 주의할 점은, left < right 인 경우 이동횟수가 +1이므로 최종 cnt에 1을 더해주어야 한다. 코드 #include #include #include using namespace std; int N, M; int..

Tech/Algorithm 2023.07.05

[프로그래머스] 문자열 압축 c++ (level2) 2020 KAKAO BLIND RECRUITMENT

문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/60057 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 압축한 문자열 중 가장 짧은 길이를 찾는 문제이다. 중요한점은 가장 짧은 것의 길이를 리턴해야 한다! 1단위부터 문자열 길이의 절반까지 압축 단위를 잡자. 그 이유는 절반 이상은 압축이 불가능하기 때문이다. a는 비교할 문자열이고, temp는 압축 단위에서 압축된 문자열 이다. (aabbaccc 에서 단위가 1이라면 -> 2a2baccc) for문을 한번 더 순회하며 일치하는 ..

Tech/Algorithm 2023.06.12

[프로그래머스] 네트워크 c++ java (dfs) Level3

문제 출처 : https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 연결되어 있는 네트워크의 개수를 찾는 문제이다. 하나의 네트워크를 끝까지 하나씩 탐색하므로 dfs를 활용하자! 1. main 처음 컴퓨터 개수만큼 반복하며 방문하지 않은 경우 dfs를 실행하며 정답 카운터를 1 증가시킨다. 2. dfs 방문한 노드를 true처리한 후, for문을 돌아 연결되어 있는 경우(computers[idx][i]) && 방문하지 않은 경우(!visit[i..

Tech/Algorithm 2023.05.05

[BOJ] 백준 2143 두 배열의 합 c++ (이분탐색, 누적 합)

문제 출처 : https://www.acmicpc.net/problem/2143 2143번: 두 배열의 합 첫째 줄에 T(-1,000,000,000 ≤ T ≤ 1,000,000,000)가 주어진다. 다음 줄에는 n(1 ≤ n ≤ 1,000)이 주어지고, 그 다음 줄에 n개의 정수로 A[1], …, A[n]이 주어진다. 다음 줄에는 m(1 ≤ m ≤ 1,000)이 주어지고, 그 www.acmicpc.net 풀이 어떻게 이분탐색을 돌려야할지 고민이 되는 문제이다. 중요한 부분은, A와 B의 누적합을 미리 저장해두는 것이다. 누적 합 A, B 배열에서 모든 부 배열의 누적합을 저장한다. vector aSum, bSum; for (int i = 0; i < N; i++) { int sum = A[i]; aSum..

Tech/Algorithm 2023.04.20

[Linux] Sudo: unable to resolve host explained 발생 시 해결 방법

리눅스에서 sudo 명령어 입력시 제목과 같은 에러가 발생하는 경우가 있다. 이때 해결 방법을 알아보자 호스트명 파악 아래 명령어를 입력해 호스트 이름을 받아오자. hostname 그러면 호스트 이름을 받아 올 것이다. (예시로 test라고 하겠다.) 오류 수정 먼저 루트 사용자로 로그인 하자. sudo su 다음 /etc/hosts로 들어가자. vi /etc/hosts 들어가면 아래와 같이 화면이 있을 것이다. 127.0.0.1localhost The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-a..

Tech/Server 2023.04.18

[Docker] unable to configure the Docker daemon with file /etc/docker/daemon.json: EOF 오류 해결

도커 명령어 실행 시 아래 오류가 발생하는 경우가 있다. Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 이때 도커를 실행해보면 또 오류가 나타난다. $ sudo systemctl start docker Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details. 상태 확인 도커 서비스의 상태를 확인해보자. $ systemctl status docker.service ..

Tech/Docker 2023.04.17

[Spring JPA] 준영속 상태, 더티 체킹, 변경감지, 병합

준영속 상태 영속 상태의 엔티티가 영속성 컨텍스트에서 분리된 것 영속성 컨텍스트가 제공하는 기능 사용 불가 em.detach(entity) 특정 엔티티만 준영속 상태로 전환 1차 캐시에서 빠진다라고 생각하면 쉬움 em.clear() 영속성 컨텍스트 완전히 초기화 테스트 케이스 작성시 사용 em.close() 영속성 컨텍스트를 종료 준영속 엔티티 영속성 컨텍스트가 더는 관리하지 않는 엔티티(DB에 한번 갔다 와서 식별자가 존재) 변경 감지, 병합을 통해 준영속 엔티티를 수정할 수 있다. 변경 감지 기능 @Transactional void update(Item itemParam) { Item findItem = em.find(Item.class, itemParam.getId()); findItem.setPr..

Tech/Spring 2023.04.17
728x90
반응형