DevBoi

1. 알고리즘 정리 (브루트 포스) 본문

Algorithm/[Etc]

1. 알고리즘 정리 (브루트 포스)

HiSmith 2021. 7. 16. 02:12
반응형

우선 개념에 대해서 숙지 및 관련 유형 문제를 풀이한다.

(문제는 , 백준 기준 - https://www.acmicpc.net/step 기준)

 

1. 브루트포스

완전 탐색 알고리즘, 가능한 모든 경우를 탐색 , 조건에 맞는 결과만 가져온다.

무식하게 탐색하는 방법, 100% 정답을 찾는다.

 

* 블랙잭 문제

https://www.acmicpc.net/problem/2798

 

2798번: 블랙잭

첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장

www.acmicpc.net

 

전형적인, 완전 탐색문제이다.

배열을 3중 for문을 사용해서 탐색을 하면된다. 이때 주의할점은

각각의 카드는 1장씩이니까. 서로 같은 인덱스를 사용하지 않게만 해주면 된다.

답안.

 

* 분해합

https://www.acmicpc.net/problem/2231

 

2231번: 분해합

어떤 자연수 N이 있을 때, 그 자연수 N의 분해합은 N과 N을 이루는 각 자리수의 합을 의미한다. 어떤 자연수 M의 분해합이 N인 경우, M을 N의 생성자라 한다. 예를 들어, 245의 분해합은 256(=245+2+4+5)이

www.acmicpc.net

 

이건 그냥 i를 target Num으로 받아서, 1씩 빼가면서, 별도 함수로 특정 기능을 수행하여서check를 해주면된다.

단순히 조건을 가지고 코딩을 하면되고 체크를 해서 boolean으로 return 및 해당 true일때만 result에 값을 넣어서 최종 print해주면된다.

 

* 덩치

이진수의 배열이 오고, 해당 배열에 대한 값을 합해서, 크면 count ++,

총 등수에 대한 index를 count+1로 넣어준다(0등이 없으므로 ^^)

https://www.acmicpc.net/problem/7568

 

7568번: 덩치

우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩

www.acmicpc.net

 

 

답안,

 

 

 

반응형