1 条题解
-
0
C :
# include <stdio.h> int main() { int K,N,coin=0; scanf("%d",&K); //输入总天数K for(N=1;K-N>=0;K-=N++) //第1天骑士可获得1枚金币 coin+=N*N; //在接下来的连续N天里,骑士每天可获得N枚金币 printf("%d\n",coin+K*N); //输出骑士总共可获得的金币数 return 0; }
C++ :
#include <iostream> using namespace std; int main(){ int n,i,s = 0,c = 0,k = 1; cin>>n; for(i = 1;i <= n;i++){ //cout<<i<<" "<<k<<endl; s = s + k; c++; if(c == k){ c = 0; k++; } } cout<<s<<endl; }
Java :
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n=sc.nextInt(); int count=0; int sum=0; for(int k=1;true;k++) { // k 来控制 每次加的天数 for(int p=0;p<k;p++) { sum=sum+k; count++; if(count==n) { System.out.print(sum); break; } } if(count==n) { break; } } } }
Python :
a=int(input()) if a>=1 and a<=10000: coins=0 days=0 daystrue=0 tof=1 while daystrue<=a: days+=1 for i in range(days): if daystrue<a: coins+=days daystrue+=1 else: tof=0 break if tof==0: break print(coins)
- 1
信息
- ID
- 2440
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者