본문 바로가기
반응형

브루트포스13

프로그래머스 - 나머지가 1이 되는 수 찾기 / C++ 문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/87389 코딩테스트 연습 - 나머지가 1이 되는 수 찾기 자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. 제한사항 입 programmers.co.kr 문제 풀이 n은 3부터 100만까지이므로 단순 브루트포스로 값을 구할 수 있다. 소스 코드 #include #include using namespace std; int solution(int n) { int answer = 0; for(int i=2; i 2021. 10. 17.
C++ - 소수 판별 / 단순 브루트포스, 에라토스테네스의 체 문제 1 : https://www.acmicpc.net/problem/2581 2581번: 소수 M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다. www.acmicpc.net 해당 문제는 범위가 10,000 이하의 자연수이며 시작값과 끝값 중에 존재하는 소수를 모두 더한 값과 최솟값을 출력하면 된다. 따라서 단순 브루트포스로 isPrime 함수를 구현한다. 1과 n이 아닌 다른 값으로 나누어 떨어지면 false를 반환, 그렇지 않다면 소수이므로 true를 반환한다. 이렇게 소수를 판별할 수 있고, 소수로 판별된 값은 total에 모두 더하며 최솟값을 계속 갱신해준다... 2021. 10. 12.
BOJ 1436 영화감독 숌 / C++ 문제 링크 : https://www.acmicpc.net/problem/1436 1436번: 영화감독 숌 666은 종말을 나타내는 숫자라고 한다. 따라서, 많은 블록버스터 영화에서는 666이 들어간 제목을 많이 사용한다. 영화감독 숌은 세상의 종말 이라는 시리즈 영화의 감독이다. 조지 루카스는 스타 www.acmicpc.net 문제 풀이 문제 설명이 잘 이해가 되지 않아 다른 블로그를 통해 이해했다. 일단 종말의 숫자란 6이 최소 3개 이상 들어간 숫자이고 N 번째 영화의 제목은 종말의 숫자이면서 N번째로 작은 숫자이다. 예를 들면 666, 1666, 2666, 3666, 4666, 5666, 6660, 6661, 6662 이런식으로 진행되는데 5666 다음에 6666 이 되지 않는 이유는 6660 이 .. 2021. 8. 27.
BOJ 2851 슈퍼 마리오 / C++ 문제 링크 : https://www.acmicpc.net/problem/2851 2851번: 슈퍼 마리오 첫째 줄에 마리오가 받는 점수를 출력한다. 만약 100에 가까운 수가 2개라면 (예: 98, 102) 마리오는 큰 값을 선택한다. www.acmicpc.net 문제 풀이 버섯은 처음부터 순서대로 먹어야 하므로 하나씩 더해가는 변수 total이 필요하다. 또한 여태까지 먹었던 버섯의 점수를 변수 ans에 넣고 100에서 뺀 절댓값을 통해 먹어야할지 말아야할지 결정한다. 1 2 3 5 8 13 21 34 55 89로 예를 들면, (1) total에 1을 더하고 100 - total의 절댓값과 100 - ans의 절댓값을 비교한다. (ans는 0으로 초기화 되어있다.) 당연히 100 - total의 절댓값.. 2021. 8. 27.
반응형