zoukankan      html  css  js  c++  java
  • 【洛谷P2660烤鸡】

    题目背景

    猪猪hanke得到了一只鸡

    题目描述

    猪猪Hanke特别喜欢吃烤鸡(本是同畜牲,相煎何太急!)Hanke吃鸡很特别,为什么特别呢?因为他有10种配料(芥末、孜然等),每种配料可以放1—3克,任意烤鸡的美味程度为所有配料质量之和

    现在,Hanke想要知道,如果给你一个美味程度,请输出这10种配料的所有搭配方案。

    这道题本来应应用递归算法,但是由于本蒟蒻对递归的掌握不熟,加之本题的思维非常水,只需要暴力模拟,就能把题目解出;

    下面是对本题的思维方法总结:

    1:对于先输出后循环的题目,可以先用循环算出本题中的方案总数,再循环一遍输出搭配方案;

    2:一定要看好本题的输出要求,每个配料质量之间有空格,不要漏掉!!!

    程序如下:

    #include<iostream>
    #include<cstdio>
    #include<cmath>
    using namespace std;
    int main()
    {
        int n,s,a,b,c,d,e,f,g,h,i,j;
        cin>>n;
        for(a=1;a<=3;a++){
          for(b=1;b<=3;b++){
            for(c=1;c<=3;c++){
              for(d=1;d<=3;d++){
                for(e=1;e<=3;e++){
                  for(f=1;f<=3;f++){
                    for(g=1;g<=3;g++){
                      for(h=1;h<=3;h++){
                        for(i=1;i<=3;i++){
                          for(j=1;j<=3;j++){
                            if(a+b+c+d+e+f+g+h+i+j==n) {
                            s++;}}}}}}}}}}}
        cout<<s<<endl;
        for(a=1;a<=3;a++){
          for(b=1;b<=3;b++){
            for(c=1;c<=3;c++){
              for(d=1;d<=3;d++){
                for(e=1;e<=3;e++){
                  for(f=1;f<=3;f++){
                    for(g=1;g<=3;g++){
                      for(h=1;h<=3;h++){
                        for(i=1;i<=3;i++){
                          for(j=1;j<=3;j++){
                            if(a+b+c+d+e+f+g+h+i+j==n) {cout<<a<<" "<<b<<" "<<c<<" "<<d<<" "<<e<<" "<<f<<" "<<g<<" "<<h<<" "<<i<<" "<<j<<" "<<endl;
                            s++;}}}}}}}}}}}
    }//beautiful!!!

    I can do all things
  • 相关阅读:
    windows常用快捷键
    【Linux】查看系统位数
    【Centos】yum 安装mariaDB
    【Centos7 GRUB】修改开机等待时间
    Shell脚本编写规范
    【Shell Basic】source . 与 bash sh 的区别
    linux防火墙之 ufw
    【HotSpot】jps命令行详解
    【Ubuntu 16】网络配置文件
    【刷题】BZOJ 2179 FFT快速傅立叶
  • 原文地址:https://www.cnblogs.com/juruohqk/p/10401682.html
Copyright © 2011-2022 走看看