본문 바로가기

순열

(2)
백준 알고리즘 중급 - 브루트 포스 : 순열 (연습) 드디어 중급 강의 시작! 오픽의 늪에서 드디어 벗어났다. 다시 차근차근 알고리즘 공부 해보자. 처음엔 많이 헤맸는데, 요령을 알고 나니까 술술 풀렸던 파트였다. 그리고 몇가지 기억하면 좋을 꿀팁들이 있었다. 정리 잘 해뒀다가 나중에 문제 풀 때 써먹자. 정리 시작! - * 부등호 (mid) : 앞에서 풀었던 부등호 문제를 순열을 이용해 풀어보자, 2529번: 부등호 두 종류의 부등호 기호 ‘’가 k개 나열된 순서열 A가 있다. 우리는 이 부등호 기호 앞뒤에 서로 다른 한 자릿수 숫자를 넣어서 모든 부등호 관계를 만족시키려고 한다. 예를 들어, 제�� www.acmicpc.net - 브루트 포스를 사용한다면, 최댓값은 9부터 제시된 부등호 개수 + 1 만큼의 수를 모두 배열해서 부등호를 성립하는 값을, 최..
백준 알고리즘 기초 - 브루트 포스 (순열) 자소서와 병행하느라 진도가 늦는 기분.. 하지만 속도보다 중요한 건, 확실하게 알고 넘어가는 것! 초조해 하지말자. 정리 시작! - * 순열 : 임의의 수열을 다른 순서로 섞는 연산. 문제를 보면서 이해하자. * 다음 순열(mid) : STL을 사용해도 되지만, 원리를 알기 위해 직접 구현 해보자. 10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net #include #include using namespace std; int p[10000]; bool next_permutation(int *a, int n) { int i = n - 1; while ( i > 0 && a[i..