信阳市网站建设,wordpress 商务 主题,网站开发有哪些术语,前端区块链开发题目背景 猪猪hanke得到了一只鸡 题目描述 猪猪Hanke特别喜欢吃烤鸡#xff08;本是同畜牲#xff0c;相煎何太急#xff01;#xff09;Hanke吃鸡很特别#xff0c;为什么特别呢#xff1f;因为他有10种配料#xff08;芥末、孜然等#xff09;#xff0c;每种配料可… 题目背景 猪猪hanke得到了一只鸡 题目描述 猪猪Hanke特别喜欢吃烤鸡本是同畜牲相煎何太急Hanke吃鸡很特别为什么特别呢因为他有10种配料芥末、孜然等每种配料可以放1—3克任意烤鸡的美味程度为所有配料质量之和 现在Hanke想要知道如果给你一个美味程度请输出这10种配料的所有搭配方案 输入输出格式 输入格式 一行,n5000 输出格式 第一行方案总数 第二行至结束10个数表示每种配料所放的质量 按字典序排列。 如果没有符合要求的方法就只要在第一行输出一个“0” 输入输出样例 输入样例#1 11 输出样例#1 10
1 1 1 1 1 1 1 1 1 2
1 1 1 1 1 1 1 1 2 1
1 1 1 1 1 1 1 2 1 1
1 1 1 1 1 1 2 1 1 1
1 1 1 1 1 2 1 1 1 1
1 1 1 1 2 1 1 1 1 1
1 1 1 2 1 1 1 1 1 1
1 1 2 1 1 1 1 1 1 1
1 2 1 1 1 1 1 1 1 1
2 1 1 1 1 1 1 1 1 1 题解 这道题用递归搜索所有满足总调味料之和n的搭配方案并计数然后把搭配方案插入到字符串集合中以方便排序和保存方案最后输出t(总方案数)与保存到集合中的方案即可#include iostream
#include set
#include string
using namespace std;
int n, a[11] { 0 }, h 0;
long long t 0;
string kk,z;
setstring k;
void dg(int m) {if (m 11) {for (int i 1; i 10; i) h a[i];if (h n) {kk a[1]0;for (int i 1; i 10; i) {kk a[i 1]0;}k.insert(kk);t;}h 0;a[1] 0;return;}for (int i 3; i 1; i--) {a[11-m] i;dg(m 1);}
}
int main() {cin n;dg(1);cout t endl;setstring::iterator it;for (it k.begin(); it ! k.end(); it) {z *it;cout z[0] z[1] z[2] z[3] z[4] z[5] z[6] z[7] z[8] z[9] endl;}return 0;
} 转载于:https://www.cnblogs.com/LackProgramMonkey/p/9862509.html