반응형

구현 33

[S4] 백준 24465번 데뷔의 꿈 C++ 구현, 정렬

리뷰 https://www.acmicpc.net/problem/244657명의 멤버와 별자리가 겹치지 않는 지원자를 출력하는 문제별자리를 일일히 세팅을 해주기 싫어 방법을 찾았으나 1월이 주어졌을때 12월의 별자리인 경우가 좀 짜증났다.풀고 나니 내림이 아닌 올림을 하면 더 편하게 접근할 수 있을 것 같다. 전역 변수byeol : 각 월의 별자리의 경계일을 저장할 정수형 배열v : 멤버의 별자리를 체크하기 위한 정수형 배열MD : 별자리가 겹치지 않는 지원자의 월, 일을 저장하고, sort용 비교함수를 넣는 구조체ans : 별자리가 겹치지 않은 지원자들을 모아둔 MD타입 벡터 함수없음  문제풀이먼저 7명의 멤버 생일을 입력 받고, 각 별자리에 해당하는 v의 인덱스에 체크를 해준다.지원자의 수 n을 입력 ..

[G5] 백준 1593번 문자 해독 C++ 슬라이딩 윈도우, 구현, 문자열

리뷰 https://www.acmicpc.net/problem/1593그리디한 접근 시 시간 초과가 났다. for문 한줄로 완탐을 끝낼 수 있는 방법을 많이 연구 해야할 것 같다. 전역 변수n, m, ans : 문자열 a의 길이 n, 문자열 b의 길이 m, 정답 저장용 변수 ansa, b : 입력으로 주어지는 첫번째 문자열 a, 두번째 문자열 bav : a문자열이 보유하고 있는 문자의 개수 정보 배열, 52크기로 세팅한다.bv : b문자열의 보유하고 있는 문자의 개수 정보 배열, 마찬가지로 52크기로 세팅 함수1. chkint chk() 현재 부분문자열이 일치하는지 여부를 체크하기 위한 함수av와 bv의 모든 인덱스에 저장된 값이 동일한지 체크해 주어야 한다.만약 다른 값을 만났다면 0을 리턴해 주면되고..

[L2] 프로그래머스 H-index C++ 완전 탐색, 브루트포스 알고리즘, DAT

리뷰처음엔 문제 이해가 잘 되지 않았는데 벡터 내에 존재하는 수가 n개 이상인 최대값을 구하는 문제로 받아들였다.  프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  전역 변수v : 나온 숫자의 합계를 저장해 둘 정수형 배열, 크기는 10001로 세팅한다. 함수없음  문제풀이매개변수로 주어진 citations 벡터에 존재하는 값들을 for문을 통해 모두 탐색한다.v배열의 1 ~ 현재수까지의 인덱스를 모두 1씩 증가시켜준다.len을 citations벡터의 길이로 초기화 해주고, h_index변수를 0으로 초기화 해준다.len크기로 while문을 개행하고 현재 v..

[G5] 백준 15686번 치킨 배달 C++ 백트래킹, 브루트포스 알고리즘, 구현, 플러드필

리뷰 DFS + 플러드필을 조합하여 AC를 받았다, 조합 관련 가지치기가 필요한 문제 안하면 시간 초과 난다 ㅠhttps://www.acmicpc.net/problem/15686 전역 변수n, m, ans : 맵의 한 변의 길이를 저장할 변수 n, 치킨 집의 최대를 저장할 변수 m, 정답을 저장할 변수 ansdx, dy : 4방향 탐색을 위한 방향 배열lst : 맵 정보를 입력 받을 2차원 정수형 벡터BBQ : 치킨 집 정보를 저장할 구조체, 치킨집의 x, y좌표와 현재 이동한 거리를 d에 저장한다.bbqs : 치킨 집의 모든 정보를 저장할 벡터choose : 현재 선택한 치킨집의 인덱스를 저장할 정수형 벡터cnt : bbqs의 길이를 저장할 정수형 변수chic : 치킨 집의 중복을 방지하기 위해 사용할..

[G2] 19236번 청소년 상어 C++ 백트래킹, 시뮬레이션, 구현, 재귀

리뷰 문제 이해에도 시간이 많이 걸리고 구현과 시뮬레이션 디버깅에도 다소 시간이 걸렸으나 한번에 풀긴 했다.https://www.acmicpc.net/problem/19236 전역 변수dx, dy : 8방향 탐색을 위한 방향 배열v : 이미 잡아먹힌 물고기를 방문처리 하기 위한 배열max_val : 잡아먹은 물고기의 번호 최대값을 저장하기 위한 변수sdir : 최초에 잡아먹은 물고기가 갖고 있던 방향 정보를 저장하기 위한 변수Fish : 물고기의 위치와 진행 방향을 저장하기 위한 구조체fishes : 초기 물고기들의 위치와 방향 정보를 저장할 Fish타입 벡터lst : 초기 맵에 존재하는 물고기 번호를 저장하기 위한 4 * 4크기의 정수형 벡터 함수1. inputvoid input() 4 * 4사이즈의 ..

[G2] 백준 2871번 아름다운 단어 C++ 그리디 알고리즘, 우선순위 큐, 구현

리뷰 그리디한 방법을 설계하여 알아서 문제를 푸는 구현문제인듯 하다.https://www.acmicpc.net/problem/2871 전역 변수n : 주어진 문자열의 길이v : 현재 상황에서 문자열이 존재하는지 체크하기 위한 배열 크기는 최대 문자열 크기인 10만으로 초기화 한다.s, t1, t2 : 입력되는 초기 문자열 s, 상근이의 문자열 t1, 희원이의 문자열 t2Prio : 원하는 단어를 얻기 위한 우선순위 큐용 구조체pq : 희열이가 사용할 우선순위 큐, 문자 기준 오름차순, 같다면 인덱스 기준 내림차순 정렬을 하였다. 함수없음  문제풀이n과 s값을 입력받은 뒤 0부터 n - 1까지 순회해준다.v배열을 모두 1로 변경해 주고 pq에는 문자와 해당 문자의 인덱스를 추가해 준다.상근이가 문자열을 가..

[D2] SWEA 22654번 차윤이의 RC카 C++ 구현, 시뮬레이션

리뷰 RC카의 움직임을 각 쿼리문으로 제어하고 최종 위치가 목적지인지 확인하는 문제 SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com 전역변수tc : 테스트 케이스의 개수n, q : 맵의 한 변이 길이 n, RC카를 조종하는 횟수의 개수 qsx, sy, dx, dy : 시작 위치와 도착 위치의 x, y 좌표lst : 맵 정보, 문자열로 입력받으며 최대 5 * 5의 크기dx, dy : 상하좌우로 이동할 방향 배열, 0번 인덱스부터 3번인덱스까지 북동남서 방향으로 세팅한다. 함수1. inputvoid input() 한 변의 개수를 입력 받고 n * n의 맵 정보를 입력 받아준다.위치가 X일 경우 시작 위치의 좌표를 sx..

[P5] 백준 20541번 앨범정리 C++ 해시맵, 문자열, 트리, 구현

리뷰 앨범이나 사진이 중복될 경우 출력하는 문자열이 잘못되어서 계속 틀렸다... 문제를 잘 읽자 ㅠLinked List를 사용한다면 시간을 더 줄일 수 있을 것 같은데 아무래도 해시맵의 키를 경로의 합인 문자열을 사용하다 보니 해시 충돌이 나서 더 이상 시간을 줄이기엔 무리가 있는 것 같다.해시맵을 통해 절대 경로를 key로 사용하는 방식으로 문제를 풀었다.https://www.acmicpc.net/problem/20541 전역 변수Data : 앨범 정보를 저장할 구조체, 부모 앨범명, 현재 앨범명, 현재 앨범에 존재하는 앨범 및 사진 집합이 저장된다.dic : 맵 구조를 나타낼 해시맵, 앨범 이름을 키로 받고, 해당 폴더 정보 Data 구조체를 값으로 저장한다.del_album, del_photo : ..

[P3] 백준 12094번 2048 (Hard) C++ 백트래킹, 브루트포스 알고리즘, 구현, 시뮬레이션

리뷰 2048(Easy)의 어려운 버전, 재귀의 깊이가 기존 5에서 10으로 늘어났다. [G1] 백준 12100번 2048 (Easy) C++ 백트래킹, 구현, 시뮬레이션, 브루트포스 알고리즘리뷰 2048게임을 구현하는 문제, 시뮬레이션만 잘 작성하면 쉽게 풀 수 있으나 문제를 잘 읽어보아야 할듯 하다.https://www.acmicpc.net/problem/12100 문제 풀이전역 변수n : 맵의 행, 열을 저장할 변수anszzzz955.tistory.com 가지치기를 최소 두개를 추가해 줘야 시간 초과를 막을 수 있는 문제인 듯https://www.acmicpc.net/problem/12094 전역 변수n, ans : 맵의 행과 열의 길이를 저장할 정수형 변수 n, 최대값을 저장할 변수 ansmap ..

[G1] 백준 12100번 2048 (Easy) C++ 백트래킹, 구현, 시뮬레이션, 브루트포스 알고리즘

리뷰 2048게임을 구현하는 문제, 시뮬레이션만 잘 작성하면 쉽게 풀 수 있으나 문제를 잘 읽어보아야 할듯 하다.https://www.acmicpc.net/problem/12100 문제 풀이전역 변수n : 맵의 행, 열을 저장할 변수ans : 최대값을 저장하기 위한 변수map : 맵 정보를 입력받을 2차원 정수형 벡터 n값을 입력 받고 map을 n * n크기로 초기화 해준 뒤 맵의 정보을 입력 받아준다.dfs를 통해 상하좌우로 미는 작업을 완전 탐색으로 구현해 준다, 매개변수는 시도한 횟수 level과 맵을 참조한다.기저 조건으로 level이 5에 도달하면 5번 작업을 한 상태이므로 맵을 체크하여 최대 값을 갱신해 준다.4방향으로 탐색을 하며 상하좌우로 맵을 미는 작업을 한 후에 재귀를 실행해 준다.이때..

728x90
반응형