当前位置: 首页 > wzjs >正文

asp 网站地图生成网站备案有期限吗

asp 网站地图生成,网站备案有期限吗,nginx wordpress conf,建设网站公司不给源代码数独是一个我们都非常熟悉的经典游戏,运用计算机我们可以很快地解开数独难题,现在有一些简单的数独题目,请编写一个程序求解。 如有多解,输出一个解 思路一 简单数独 通过找出空缺位置在行、列、3x3上的缺值,进行补充。…

数独是一个我们都非常熟悉的经典游戏,运用计算机我们可以很快地解开数独难题,现在有一些简单的数独题目,请编写一个程序求解。
如有多解,输出一个解

思路一 简单数独

	通过找出空缺位置在行、列、3x3上的缺值,进行补充。
#include <iostream>
using namespace std;int main() {int blockNum = 0, whileTime = 200;int shudu[9][9] = {0};bool fullFlag = false;for (int i = 0; i < 9; i++) {for (int j = 0; j < 9; j++) {cin >> shudu[i][j];if (0 == shudu[i][j]) {// isFull[i][j] = false;blockNum++;}}}while (!fullFlag && whileTime) {for (int i = 0; i < 9; i++) {for (int j = 0; j < 9; j++) {if (!shudu[i][j]) {//缺少的为false,有的为truebool numList[9] = {false};int lackTime = 0;int lackSet = -1;/*步骤一:找出当前位置所在行、列、块的缺值(numList)*///行,行标不变遍历列for (int j_ = 0; j_ < 9; j_++) {if (shudu[i][j_]) {numList[shudu[i][j_] - 1] = true;}}//列,列标不变遍历行for (int i_ = 0; i_ < 9; i_++) {if (shudu[i_][j]) {numList[shudu[i_][j] - 1] = true;}}//3x3,遍历所在块for (int i_ = (i / 3); i_ < (i / 3 + 1) * 3; i_++) {for (int j_ = (j / 3); j_ < (j / 3 + 1) * 3; j_++) {if (shudu[i_][j_]) {numList[shudu[i_][j_] - 1] = true;}}}/*步骤二:判断当前位置的缺失值是否唯一*/for (int k = 0; k < 9; k++) {if (!numList[k]) {lackTime++;lackSet = k;}}if (1 == lackTime) {shudu[i][j] = lackSet + 1;blockNum--;whileTime++;if (0 == blockNum) {fullFlag = true;}}}}}whileTime--;}if (fullFlag) {for (int i = 0; i < 9; i++) {for (int j = 0; j < 9; j++) {cout << shudu[i][j] << ' ';}cout << endl;}} else {cout << "解题失败!";}return 0;
}
	代码使用了多次循环,寄希望与可以通过多轮迭代完成最终解答,但是无法处理多候选数情况、循环次数也可能冗余或不足。此外应对多候选时需要使用回溯机制。

思路二

	引入回溯机制,当发现状态空间树上该路径无法得到正确解时,通过逐层回溯进行下一次尝试直到得到最终解。
#include <iostream>
using namespace std;bool isVilad(int MIX[9][9], int I, int J, int num) {int i = (I / 3 ) * 3;int j = (J / 3 ) * 3;//检查行for (int _j = 0; _j < 9; _j++) {if (num == MIX[I][_j])return false;}//检查列for (int _i = 0; _i < 9; _i++) {if (num == MIX[_i][J])return false;}//检查3x3for (int _i = i; _i < i + 3; _i++) {for (int _j = j; _j < j + 3; _j++) {if (num == MIX[_i][_j])return false;}}return true;}bool solve(int MIX[9][9]) {for (int i = 0; i < 9; i++) {for (int j = 0 ; j < 9; j++) {//如果为空,则进行补充if (0 == MIX[i][j]) {for (int num = 1; num <= 9; num++) {//尝试1~9if (isVilad(MIX, i, j, num)) {MIX[i][j] = num;if (solve(MIX))return true;MIX[i][j] = 0;}}return false;}}}return true;
}int main() {int board[9][9];// 读取输入for (int i = 0; i < 9; i++)for (int j = 0; j < 9; j++)cin >> board[i][j];// 求解并输出if (solve(board)) {for (int i = 0; i < 9; i++) {for (int j = 0; j < 9; j++) {cout << board[i][j];if (j < 8) cout << ' ';}cout << endl;}} else {cout << "返回False" << endl;}return 0;
}

思路三:
将前两者结合,即在迭代时,只从当前位置空缺的选项中选择,能提高一定时间?
或许,但是可能直接回溯更快,因为重复项会在第一次判断时直接PASS,从而不会增加过多时间。

http://www.dtcms.com/wzjs/819386.html

相关文章:

  • 兰州网站建设论坛广州建设工程造价管理站
  • 莘县网站建设公司百度做网站推广电话
  • 网站建设相关知识班级网站建设首页报告
  • 网站查询备案有哪些企业可以做招聘的网站有哪些
  • 制作网站的手机软件优秀设计作品赏析
  • 电脑上如何做网站网页制作与设计命令
  • 西部数码网站管理助手 ftp密码威海做网站推广的企业
  • 网站建设时 网站信息可以边建设边组织建设网站需要买什么手续费
  • 酒店用品网站建设html页面设计工具
  • 如何开发移动网站wordpress 博客统计
  • 成都网站备案查询投资理财网站开发
  • 呼和浩特市网站wordpress亿起发
  • 怎么建立网站 个人热点搜索类的网站优点
  • 如何对网站做渗透南昌网站建设公司服务
  • 网站建设与规划手机网站模板 php
  • 哪个网站有手机西安租房网
  • 地方门户网站appapp开发方式
  • 博客页面html模板哈尔滨做网站优化
  • 室内设计师个人网站东莞网络优化排名
  • 做企业网站申请域名塘厦网站仿做
  • 做网站公司cnfg网站建设开发流程
  • 网站建设策划书怎么写wordpress登入账户
  • 网站大图轮播海宁市住房和城乡建设网站
  • 网站编程器江苏省住房和城乡建设厅官网
  • 如何做搜索网站展示型网站有哪些内容
  • 手机免费代理ip网站佛山网络推广培训
  • 秦皇岛企业网站建设网站建设升级的必要性
  • 柳州建站深圳网站定制深圳网站建设公司
  • 泰州网站建设定制烟台建设公司网站
  • 太原网站建设维护株洲今天最新通知