1 条题解
- 
  -1
#include <vector> using namespace std; vector<int>vec; int N,ans,aa; int dfs(int n) { int a = 1; for (int i = 2;i <= n / 2;i++) { if (n % i == 0) { vec.push_back(i); a += dfs(n / i); vec.pop_back(); } } int s = N; for (int i = 0;i < vec.size();i++) { s /= vec[i]; } vec.push_back(s); for (int i = 1;i < vec.size();i++) { if (vec[i] < vec[i - 1]) { ans++; break; } } vec.pop_back(); return a; } int main() { cin >> N; cout << dfs(N) - ans; } 
信息
- ID
 - 3066
 - 时间
 - 1000ms
 - 内存
 - 256MiB
 - 难度
 - 3
 - 标签
 - 递交数
 - 26
 - 已通过
 - 0
 - 上传者