- 博客(6)
- 收藏
- 关注
原创 爬山算法与模拟退火
以一道ai引论的课程作业为例: 翻译过来就是:找一个多边形的费马点(到多边形每个角距离之和最小的点)一、爬山算法//by szj#include <iostream>#include <cstdio>#include <cstdlib>#include <cmath>#include <cstring>#include...
2021-04-05 21:47:46 177
原创 codevs 2928 你缺什么
读完题后基本就能确定深度优先搜索了。。剩下的细节自己填补即可。#include #include #include #include #include #include using namespace std;int N;int ans[10000+2],x[10000+2];bool flag[10000+2];void DFS(int n){ if(n>N){
2017-07-21 12:48:33 195
原创 codevs 1102 采药
典型的“01背包”。#include #include #include #include #include #include using namespace std;int N,M,t,v;int f[1000+2];int main(){ scanf("%d %d",&N,&M); for(int i=1;i<=M;++i){ scanf("%d %d
2017-07-21 12:44:34 213
原创 codevs 2925 整除问题
这次是整除问题。刚读完题时,相信很多人会和我一样,脑中闪现的词语一定是——“搜索”。确实,所谓“搜索是万能的”,本题用搜索确实可以做,但“搜索也是万万不能的”,当你提交后,一个残酷的事实摆在了你面前——超时!此时的你一定欲哭无泪。既然搜索超时,就要转变方法。经过仔细考虑,另一种方法估计已经在你脑中成型了——DP(Dynamic Programming),没错,动态规划。对于这个题你需要将两
2017-06-30 20:30:46 329
原创 codevs 1215 迷宫
这次我们来说说迷宫这个题目。对于迷宫这个题目来说,是一个将二维与搜索结合的一个典型题目,这里我展示一下深度优先搜索。在棋盘中上下左右对应的行列坐标的变化。 const int dr[]={-1,0,1,0}; const int dc[]={0,1,0,-1}; 注意移动过程中的问题,对此我们加一个判定函数check。bool check(int i,int j){
2017-06-30 20:12:05 353
原创 codevs 3066 中缀表达式转后缀表达式
这是本人第一次写博客,望着这大片的空白,略微有些不知所措······好了言归正传。这次的中缀转后缀从题目描述中很容易想到要调用栈,那么具体应如何使用呢?下面我们具体分析:首先要明确运算符号。对于本题来说,“(+-*/)”这六个符号需要分级,“(”最低,其次为“+-”,然后是“*/”,“)”最高。下面利用数组m来进行分级。 m['(']=1; m['+']=m['-']=2;
2017-06-29 18:25:36 253
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人