从n个t变化到n个t-1,恰好要n步,并且其中每一步的max值都>=t,所以把50个49当成最终局面,从这里开始,根据输入的K计算初始局面即可。

#include<cstdio>
#include<iostream>
using namespace std;
typedef long long ll;
ll K;
int main(){
	cin>>K;
	int n=50;
	printf("%d\n",n);
	ll a=K/(ll)n; ll b=K%(ll)n;
	int cnt=0;
	for(int i=1;i<=(int)b;++i){
		++cnt;
		cout<<49ll+a+((ll)n-(b-1ll))<<(cnt==n ? '\n' : ' ');
	}
	for(int i=1;i<=n-(int)b;++i){
		++cnt;
		cout<<49ll+a-b<<(cnt==n ? '\n' : ' ');
	}
	return 0;
}

相关文章:

  • 2021-10-25
  • 2021-06-05
  • 2018-09-02
  • 2021-08-15
  • 2021-12-02
  • 2022-12-23
  • 2021-02-21
  • 2021-11-17
猜你喜欢
  • 2021-07-27
  • 2022-01-18
  • 2022-12-23
  • 2022-03-07
  • 2022-12-23
  • 2021-08-31
  • 2022-12-23
相关资源
相似解决方案