AcWing 3418. 杨辉三角形
原题链接
中等
作者:
NumPy
,
2021-04-28 15:19:27
,
所有人可见
,
阅读 617
C++ 代码
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int N = 3020;
typedef long long LL;
LL c[N][N];
int n;
void init(){
for(int i = 0; i < N; i++){
c[i][0] = c[i][i] = 1;
for(int j = 1; j < i; j++)
c[i][j] = c[i - 1][j - 1] + c[i - 1][j];
}
}
int main(){
scanf("%d", &n);
init();
int ans = 1;
for(int i = 0; i < N; i++){
for(int j = 0; j <= i; j++){
if(c[i][j] == n){
printf("%d\n", ans);
return 0;
}
ans++;
}
}
printf("%lld\n", (n + 1LL) * n / 2 + 2);
return 0;
}
为什么N取3000多?
这样写不太对,比如4498500 答案是4501503
兄弟有时间填个邀请码hhhhhhhhh(可以得AC币,邀请码在学生认证那填) 我的邀请码是:GUDFH
卡测评的好兄弟, 没想到在这遇见你
哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈