본문 바로가기

백준 문제풀이120

[백준] 1303 전쟁-전투 c++ 구현 목차 https://www.acmicpc.net/problem/1303 1303번: 전쟁 - 전투 첫째 줄에는 전쟁터의 가로 크기 N, 세로 크기 M(1 ≤ N, M ≤ 100)이 주어진다. 그 다음 두 번째 줄에서 M+1번째 줄에는 각각 (X, Y)에 있는 병사들의 옷색이 띄어쓰기 없이 주어진다. 모든 자리에는 www.acmicpc.net 문제 문제 구현 방향 및 설명 이 문제는 연결리스트가 아닌 인접 행렬로 푸는 것이 더 유리하다. 출발 지점을 (0,0) 부터 (4,4) 까지 놓고 bfs를 실행하면 다음과 같이 방문한다. -> 방문했던 곳은 탐색을 시작하지 않기 때문이다. 1 2 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 코드 구현 #include #includ.. 2024. 2. 6.
[백준] 2606 바이러스 c++ 구현 목차 https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 문제 문제 구현 방향 및 설명 큐를 이용하여 인접리스트로 bfs를 구현해 보았다. 알고리즘은 아래와 같다. 1번 노드 방문 1 1번 노드를 큐에서 제거하고 인접한 2번, 5번 노드 추가 2 5 2번 노드를 빼주고 인접한 3번 노드 추가 5 3 5번 노드를 빼주고 인접한 6번 노드 추가 3 6 인접한 노드가 없으므로 빼주기만 함 6 인접한 노드가 없으므로 빼주기만 함 큐가 비었으므로 bfs종료 코드.. 2024. 2. 5.
[백준] 5430 AC c++ 구현 목차 https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net 문제 문제 구현 방향 c++의 이중연결리스트로 간단하게 구현 해 보았다. 문제 풀이 시 주의점 문자열을 입력받았을 때 숫자로 분리해내는게 조금은 까다로운 문제였다. 또한 출력할 때 한 문자로 만들어 출력해야 틀리지 않는다는 것을 주의해야 한다. 문제 풀이 Rn카운트를 만들어 짝수와 홀수일 때로 나누면 된다. 또한 사이즈가 0일때 D가 나올 경우, 완전히 비어있는 경우 [] 으로 나와야한다는 것만 주의하면 된다. 반복을 하기 때문에 초기화만 잘 해주.. 2024. 2. 4.
[백준] 3190 뱀문제 c++ 구현 목차 https://www.acmicpc.net/problem/3190 3190번: 뱀 'Dummy' 라는 도스게임이 있다. 이 게임에는 뱀이 나와서 기어다니는데, 사과를 먹으면 뱀 길이가 늘어난다. 뱀이 이리저리 기어다니다가 벽 또는 자기자신의 몸과 부딪히면 게임이 끝난다. 게임 www.acmicpc.net 문제 문제 접근 방법 머리 꼬리를 보고 연결리스트로 구현해야겠다는 생각이 들었다. 그 과정에서 경우를 나누어서 생각해 보았다. 뱀이 사과를 먹지 않은 경우 이 경우에는 뱀 머리의 위치를 추가해준 뒤 뱀 꼬리의 위치를 추가해준다. 그 후 뱀의 꼬리 위치를 삭제 해준다. 뱀이 사과를 먹은 경우 이 경우에는 뱀 머리의 위치를 추가한 뒤 뱀 꼬리의 위치를 추가해준다. 그 후 뱀의 꼬리 위치를 삭제하지 않는.. 2024. 1. 27.
728x90