#include <bits/stdc++.h>
using namespace std;
int D[100005];
int n;
int main(void) {
ios::sync_with_stdio(0);
cin.tie(0);
cin >> n;
D[1] = 1;
for (int i = 2; i < 100001; i++) {
D[i] = D[i - 1] + 1;
int flag = 2;
while (i - flag * flag >= 0) {
D[i] = min(D[i], D[i - flag * flag] + 1);
flag += 1;
}
}
cout << D[n];
}
'백준 문제풀이' 카테고리의 다른 글
백준 1931번 - C++ (0) | 2022.05.14 |
---|---|
백준 11047번 - C++ (0) | 2022.05.14 |
백준 10844번 - C++ (0) | 2022.05.13 |
백준 15486번 - C++ (0) | 2022.05.13 |
백준 14501번 - C++ (0) | 2022.05.13 |