최대한으로 자른 다는 것은 지금 까지, 잘랐던 경로를 최대한 많이 부딪혀야 하는 문제입니다.
어떠한 원리가 있는지는 잘은 모르겠지만, 저는 한 번 최대한으로 자른 조각의 갯수를 나열해봤습니다.
1, 2, 4, 6, 9, 12, 16, 20...
답은 증가수열에 있다는 것을 알아냈습니다.
처음에는 1, 그다음에는 2, 2번 다음에는 3씩 2번 증가하는 수열임을 알 수 있습니다.
🔔 Code :
#include <iostream>
using namespace std;
int main() {
int n, total =0;
cin >> n;
total = 2;
for (int i = 2; i <= n; i++) {
total += 1 + (i / 2);
}
cout << total;
}