暴力!
原题链接:55.金币2023-10-02 16:09:50
发布于:浙江
有没有暴力的题解!!!!!!
全部评论 4
#include <unistd.h> int read_int() { char buf[16]; int n = read(0, buf, 16); int x = 0; for (int i = 0; i < n && buf[i] >= '0'; ++i) x = x * 10 + (buf[i] - '0'); return x; } void write_long(long long x) { char buf[32]; int i = 31; buf[31] = '\n'; do { buf[--i] = '0' + (x % 10); x /= 10; } while (x); write(1, buf + i, 32 - i); } int main() { int k = read_int(); int lo = 1, hi = 2e9; while (lo < hi) { int mid = lo + (hi - lo + 1) / 2; if ((long long)mid * (mid + 1) / 2 <= k) lo = mid; else hi = mid - 1; } int m = lo; long long total = (long long)m * (m + 1) * (2 * m + 1) / 6; total += (long long)(k - m * (m + 1) / 2) * (m + 1); write_long(total); return 0; }//可以试试测了好几遍最快的昨天 来自 甘肃
0#include<bits/stdc++.h>
using namespace std;
int main(){
int k;
int n=1,sum=0;
cin>>k;
while(k>0){
for(int i=1;i<=n;i++){
if(k==0) break;
k--;
sum+=n;
}
n++;
}
cout<<sum;
return 0;
}2024-07-21 来自 北京
0#include<bits/stdc++.h> using namespace std; int n,a,sum=1; int main(){ cin>>n; while(true){ for(int j=1;j<=sum;j++){ a+=sum; n--; if(n==0){ cout<<a; return 0; } } sum++; } return 0; }2024-07-21 来自 广东
0有啊
https://www.acgo.cn/problemset/55/89?tab=explanation
2023-10-02 来自 四川
0





















有帮助,赞一个