출처

  • 2022 서강대학교 청정수컵 새내기 Round B번

문제

링크

풀이

어떤 수 에 대해, 두 사이에 다른 수가 끼어들면 그 합은 반드시 증가한다.

따라서 청정수열의 점수를 최소화하기 위해서는 같은 수 두 개를 서로 붙여야 한다.

즉, 형태가 되어야 하고, 이때 발생하는 점수는 가 된다.

따라서 과 같이 같은 수끼리 붙어있는 형태를 만들어야 한다.

여기서 경우의 수는 부터 까지의 순열을 만드는 것과 같으므로, 이다.

코드

#include <iostream>
using namespace std;
 
void solve(void) {
  int n; cin >> n;
 
  int ans = 1;
  while (n) ans *= n--;
  cout << ans;
}
 
int main(void) {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
 
  solve();
  return 0;
}