- 博客(3)
- 收藏
- 关注
原创 打表法详解以及n皇后详解
打表法详解以及n皇后详解 先给原题链接 描述 在N*N的方格棋盘放置了N个皇后,使得它们不相互攻击(即任意2个皇后不允许处在同一排,同一列,也不允许处在与棋盘边框成45角的斜线上。 你的任务是,对于给定的N,求出有多少种合法的放置方法。 输入 1 8 5 0 输出 1 92 10 详解 经典的n皇后问题,使用回溯法求解,可是非常容易超时,所以用打表进行优化 n皇后求解呢,总结起来思路是这样: 其实用不着二维数组,因为每一行只能放一个皇后,不然就不符合条件了是不是,所以我们只要开一个一维数组,下表是皇后所
2020-10-14 14:34:42 487
原创 浙江省第十七届程序大赛赛后笔记
浙江省第十七届程序大赛赛后笔记 第一题和第二题都是水题,一次过稍微讲讲思路 A 这题意思就是输入后不超过1/3的分数超过80分,照题目模拟即可 B 这题的意思是养兔子,每天放1个胡萝卜,nnn只兔子,每只重量WiWiWi,kkk天以后每只兔子的重量是多少,第iii只兔子兔子拿到胡萝卜的概率是Wi∑i=1nWi\frac{Wi}{\sum_{i=1}^nWi}∑i=1nWiWi所以模拟即可,注意每次每只兔子重量变化后它拿到下一个的概率不变 C C题的意思是一个集合,重排列后下标相同但元素不同的最多个
2020-10-11 21:20:50 488 1
原创 算法复杂度和合并果子题解
技术微刊 算法 要了解算法,就要先了解算法的时间复杂的。 该如何判断一个算法的好坏,很关键的一点就是拥有较少的程序运行时间,也就是较小的时间复杂度(time complexity)。那么什么是算法的复杂度呢: 简而言之,就是一个算法要花多少时间执行。 我们先以一个简单的算法导入概念: #include<stdio.h> int main(){ int a[10]={32,44,1,6...
2018-12-27 15:05:12 618
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人