50分过样例
  • 板块P2089 烤鸡
  • 楼主yyc1231
  • 当前回复10
  • 已保存回复10
  • 发布时间2024/8/29 12:50
  • 上次更新2024/8/29 15:54:53
查看原帖
50分过样例
1091120
yyc1231楼主2024/8/29 12:50

下载了测试点 输入17 输出4740 也过了

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define du double

ll n,cnt,num[10000000][11],vis[10];

void my(){
	for(int i=0;i<10;i++)num[cnt][i]=vis[i];
	return;
}

void dfs(int x,int y){
	if(x==10&&y==n){
		my();
		cnt++;
		return;
	}else if(y>=n){
		return;
	}else if(x==10)return;
	for(int i=1;i<=3;i++){
		vis[x]=i;
		dfs(x+1,y+i);
		vis[x]=0;
	}
	return;
}

int main(){
	cin>>n;
	if(n>30||n<10){
		cout<<0;
		return 0; 
	}
	dfs(0,0);
	cout<<cnt<<endl;
	for(int i=0;i<cnt;i++){
		for(int j=0;j<10;j++){
			cout<<num[i][j]<<' ';
		}
		cout<<endl;
	}
	return 0;
} 
2024/8/29 12:50
加载中...