c_cpp yukicoder No.115远足のおやつ
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp yukicoder No.115远足のおやつ相关的知识,希望对你有一定的参考价值。
#include<iostream>
#include<vector>
using namespace std;
int memo[101][1001][11];
int N, D, K;
vector<int> ans;
vector<int> mians;
int rec(int i, int s, int m){
if(memo[i][s][m]!=-1) return memo[i][s][m];
if(m==K){
if(s==D){
if(mians.size()==0) mians=ans;
return 1;
}else{
return 0;
}
}
if(i==N){
return 0;
}
int ret=0;
ans.push_back(i+1);
int tukau=rec(i+1, s+(i+1), m+1);
ans.pop_back();
int tukawanai=rec(i+1, s, m);
ret=(tukau||tukawanai);
return memo[i][s][m]=ret;
}
int main(){
cin>> N>> D>> K;
fill((int*)memo, (int*)memo+101*1001*11, -1);
if(rec(0, 0, 0)){
for(int i=0; i<mians.size(); i++){
if(i>0){
cout<< " ";
}
cout<< mians[i];
}
cout<< endl;
}else{
cout<< -1<< endl;
}
return 0;
}
以上是关于c_cpp yukicoder No.115远足のおやつ的主要内容,如果未能解决你的问题,请参考以下文章
c_cpp Unix的ドメインソケットの确认
c_cpp externの配列定义を使ったビルド时の配列サイズチェック方法(MINIX3より)
c_cpp C ++ 11のとdecltypeのenable_if如果练习
c_cpp 自プロセスの环境変数を全て表示する
c_cpp 总线错误:10の再现性を确认するためのテスト
c_cpp [失败例]コンピュートシェーダで大量の立方体を回す