算法设计与分析第五章 (回溯法)课后习题答案(c++) 您所在的位置:网站首页 计算机基础第五章课后答案 算法设计与分析第五章 (回溯法)课后习题答案(c++)

算法设计与分析第五章 (回溯法)课后习题答案(c++)

2024-07-17 09:58| 来源: 网络整理| 查看: 265

目录

上机实验题

        问题一:求解填字游戏问题

        问题二:求解组合问题

        问题三:求解满足方程解问题(该题无解)

在线编程题

        问题一:求解会议安排问题

        问题二:求解最小机器重量设计问题1

        问题三:求解最小机器重量设计问题2

        问题四:求解密码问题 

        问题五:求解马走棋问题

        问题六:求解幸运的袋子问题

该文章是算法设计与分析(第二版)中各章的课后习题 主编 : 李春葆 在本文中,主要是对该书第五章-回溯法章节中的上机实验题以及在线编程题进行代码解答。

代码运行环境是:DEVc++

上机实验题

问题一:求解填字游戏问题

#include #include #include #include using namespace std; //素数,计算过程中可能用到的素数 int a1[] = {2,3,5,7,11,13,17,19,23}; vector a(a1,a1+10); int result[4][4]; // coun 用于记录满足要求的方阵个数 int coun = 0; int tag[11] = {0}; bool panduan(int x, int y, int t) //判断 t 是否为素数 { // tag[t] 判断 数字 t是否被使用 if(tag[t] == 1){ return false; } if(x - 1 >= 0) { if(find(a.begin(),a.end(),t+result[x-1][y]) == a.end()) return false; } if(y - 1 >= 0) { if(find(a.begin(),a.end(),t+result[x][y-1]) == a.end()) return false; } return true; } void pushin(int x,int y){ if(x == 3){ coun++; cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

      专题文章
        CopyRight 2018-2019 实验室设备网 版权所有