小G的sum

小G的sum

https://ac.nowcoder.com/acm/contest/11160/A

链接:https://ac.nowcoder.com/acm/contest/11160/A
给定一个n, 定义mind(n)为n最小的约数,maxd(n)为n最大的约数
求sum i=1..n mind(i) + sum i=1..n maxd(i)
任意一个数的最小约数是1,最大约数是本身。
所以求1->n的最小约数和 = n, 最大约数和 = (1 + n) * n / 2
输出答案 n + (1 + n) * n / 2 即可
ps: 答案要用long long 存

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n;
int main()
{
    cin >> n;
    ll ans = n + n * (n + 1) / 2;
    cout << ans << endl; 
    return 0;
} 
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务