본문 바로가기

브루트포스3

[백준 14500] #129 : 테트로미노 (C++) https://www.acmicpc.net/problem/14500 14500번: 테트로미노 폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변 www.acmicpc.net C++ 구현, 브루트포스 사진에 보이는 5개의 테트로미노를 회전, 대칭 시켜서 점수가 적혀있는 판에 놓았을 때 테트로미노가 놓여진 칸들의 점수의 합의 최대값을 구하는 문제이다. 접근방법 브루트포스로 풀었다. 나올 수 있는 모든 도형의 모양을 구하고 (0,0) 기준으로 좌표를 구한다음 모든 도형에 대해 일일이 어디에 두면 가장 큰 값이 나오고, 그 중에 어떤 도형이 가장 큰 값을 내는지 찾았다. 도.. 2021. 10. 11.
[백준 1018] 알고리즘 34일차 : 체스판 다시 칠하기 https://www.acmicpc.net/problem/1018 1018번: 체스판 다시 칠하기 첫째 줄에 N과 M이 주어진다. N과 M은 8보다 크거나 같고, 50보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 브루트포스 C++ 규칙없이 칠해져있는 큰 판을 잘라서 8*8체스판을 만드는데 다시 칠해야 하는 칸이 최소인 경우 최솟값을 출력하는 문제 예전에 입력값 긴거 보고 패스했었는데 실버5라고 떠서 브루트포스 끝낼겸 시도해봤다. 접근방법 우선 접근방법은 브루트포스인 만큼 입력받은 큰 판에서 8*8판이 만들어 지는 모든 경우를 조사하는 것이다. 체스판을 다시 칠하는 칸의 개수를 조사하는 과정은 처음엔.. 2020. 7. 30.
[백준 14888] 알고리즘 20일차 : 연산자 끼워넣기 https://www.acmicpc.net/problem/14888 14888번: 연산자 끼워넣기 첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, �� www.acmicpc.net 백트래킹 C++ 삼성 SW 역량 테스트 기출 문제 1 문제 순서가 정해진 피연산자들이 주어지고 +,-,x,÷ 의 개수가 입력된다. 그럼 연산자들의 순서를 바꿔가며 계산한 값의 최댓값과 최솟값을 출력하는 문제이다. 접근방법 순서가 다르게 연산자들을 나열한다. N과 M(1)의 코드를 재사용했다. 그 결과 연산자들의 순서가 다른 모든 경우의 .. 2020. 7. 10.