본문 바로가기
반응형

브루트포스13

BOJ 10448 - 유레카 이론 / C++ 문제 링크 : https://www.acmicpc.net/problem/10448 10448번: 유레카 이론 프로그램은 표준입력을 사용한다. 테스트케이스의 개수는 입력의 첫 번째 줄에 주어진다. 각 테스트케이스는 한 줄에 자연수 K (3 ≤ K ≤ 1,000)가 하나씩 포함되어있는 T개의 라인으로 구성되어 www.acmicpc.net 풀이 자연수 k의 범위는 1000까지이고 삼각수의 공식은 n * (n + 1) / 2 이므로 44 * 45 / 2 = 990, 탐색 범위는 n = 44까지 하면 된다. 삼각수를 저장하는 vector를 하나 생성하여 1부터 44까지의 n * (n + 1) / 2 를 원소로 넣는다. 3중 반복문으로 삼각수들을 더하며 n을 만들 수 있는지 체크하는 함수도 생성해준다. n을 만들 .. 2023. 11. 26.
프로그래머스 - 삼총사 / C++ 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/131705 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 원소 중 3개를 택해 합이 0이 되는지 확인하면 되는 문제. 브루트포스와 DFS 두 가지 방법으로 풀어보았다. 브루트포스 코드 #include using namespace std; int solution(vector number) { int answer = 0; for(int i=0; i 2022. 12. 24.
BOJ 1107 - 리모컨 / C++ 문제 링크 : https://www.acmicpc.net/problem/1107 1107번: 리모컨 첫째 줄에 수빈이가 이동하려고 하는 채널 N (0 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 고장난 버튼의 개수 M (0 ≤ M ≤ 10)이 주어진다. 고장난 버튼이 있는 경우에는 셋째 줄에는 고장난 버튼 www.acmicpc.net 풀이 우선 0~9까지 숫자 배열을 bool값으로 만들어놓고 사용할 수 있는 값은 true, 아니라면 false로 설정해둔다. 구하고자 하는 채널 번호가 100이라면, 시작 번호가 100이므로 이동하지 않아도 된다. 따라서 0을 출력하고 종료한다. 아니라면 직접 구해야한다. 우선, + 또는 -만 눌러서 이동 가능한 값은 100 - target의 절댓값으로 구할 수 있다.. 2022. 4. 21.
BOJ 2503 - 숫자 야구 / C++ 문제 링크 : https://www.acmicpc.net/problem/2503 2503번: 숫자 야구 첫째 줄에는 민혁이가 영수에게 몇 번이나 질문을 했는지를 나타내는 1 이상 100 이하의 자연수 N이 주어진다. 이어지는 N개의 줄에는 각 줄마다 민혁이가 질문한 세 자리 수와 영수가 답한 스트 www.acmicpc.net 문제 풀이 1. 숫자는 1~9까지이다. 2. 세 자리 수 모두 겹치는 숫자가 없다. 즉, 가능한 숫자는 123 ~ 987이다. 따라서 미리 123부터 987까지 들어있는 배열을 만들고 n개의 질문마다 strike, ball을 직접 해보며 조건에 일치하지 않으면 배열에서 삭제한다. 결국 배열에는 가능한 숫자들만 남아있기 때문에 해당 배열의 size를 리턴해주면 된다. #include .. 2022. 3. 10.
반응형