求解答!老是错误过不了 1.X_X宝子们帮忙看看哪错了吧!
学习的c++哦
#include <iostream>
using namespace std;
int main() {
int m;
cin >> m;
int n = 1;
int sum = 1;
while (sum <= m) {
n++;
sum += n;
}
cout << n-1 << endl;
return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话://普通:
int dfs(int x){
int u=G[x].size(),Sum=1;
for(int i=0;i<u;i++)
Sum+=dfs(G[x][i]);
return Sum;
}
//记忆化(用a数组保存):
int dfs(int x){
if(a[x])return a[x];
a[x]=1;
int u=G[x].size();
for(int i=0;i<u;i++)
a[x]+=dfs(G[x][i]);
return a[x];
}