0
已解决
聂振阳
新手守护
新手守护
1769 数字之和 为什么90分
#include<bits/stdc++.h>
using namespace std;
int f[10001],w[10001],v[10001],s;
int main()
{
int i,j;
cin>>s;
for(i=1;i<=s;i++)
{
w[i]=i;
for(j=1;j<=i/2;j++)
if(i%j==0)
v[i]+=j;
}
for(i=1;i<=s;i++)
for(j=w[i];j<=s;j++)
f[j]=max(f[j],f[j-w[i]]+v[i]);
cout<<f[s];
return 0;
}
聂振阳在2018-08-16 16:29:02追加了内容
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,Min=100000,Max=0;
cin>>n;
while(n!=0)
{
Max=max(Max,n%10);
Min=min(Min,n%10);
n=n/10;
}
cout<<Min+Max;
}