zoj1530 bfs
//Accepted zoj1530 270ms 40008KB
#include <cstdio>
#include <cstring>
#include <iostream>
#include <queue>
using namespace std;
;
string a[imax_n];
int vis[imax_n];
queue<int > q;
queue<string >sq;
void bfs(int n)
{
if (a[n]!="") return ;
while (!q.empty()) q.pop();
while (!sq.empty()) sq.pop();
q.push();
sq.push(");
)
{
int x=q.front();
q.pop();
string s=sq.front();
sq.pop();
)
{
a[n]=s;
return ;
}
q.push(*x%n);
sq.push(s+");
q.push((*x+)%n);
sq.push(s+");
}
}
int main()
{
int n;
while (scanf("%d",&n),n)
{
bfs(n);
cout<<a[n]<<endl;
}
;
}
//Accepted zoj1530 110ms 4544kB
#include <cstdio>
#include <cstring>
#include <iostream>
#include <queue>
using namespace std;
;
long long a[imax_n];
queue<long long > q;
void bfs()
{
;
while (!q.empty()) q.pop();
q.push();
)
{
long long x=q.front();
q.pop();
;i<=;i++)
&& x%i==)
{
a[i]=x;
cnt++;
}
) return ;
q.push(*x);
q.push(*x+);
}
}
int main()
{
bfs();
int n;
//for (int i=1;i<=200;i++)
//{
// printf("a[%d]=%lld\n",i,a[i]);
//}
while (scanf("%d",&n),n)
{
printf("%lld\n",a[n]);
}
;
}
zoj1530 bfs的更多相关文章
- 图的遍历(搜索)算法(深度优先算法DFS和广度优先算法BFS)
图的遍历的定义: 从图的某个顶点出发访问遍图中所有顶点,且每个顶点仅被访问一次.(连通图与非连通图) 深度优先遍历(DFS): 1.访问指定的起始顶点: 2.若当前访问的顶点的邻接顶点有未被访问的,则 ...
- 【BZOJ-1656】The Grove 树木 BFS + 射线法
1656: [Usaco2006 Jan] The Grove 树木 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 186 Solved: 118[Su ...
- POJ 3278 Catch That Cow(bfs)
传送门 Catch That Cow Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 80273 Accepted: 25 ...
- POJ 2251 Dungeon Master(3D迷宫 bfs)
传送门 Dungeon Master Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 28416 Accepted: 11 ...
- Sicily 1215: 脱离地牢(BFS)
这道题按照题意直接BFS即可,主要要注意题意中的相遇是指两种情况:一种是同时到达同一格子,另一种是在移动时相遇,如Paris在(1,2),而Helen在(1,2),若下一步Paris到达(1,1),而 ...
- Sicily 1048: Inverso(BFS)
题意是给出一个3*3的黑白网格,每点击其中一格就会使某些格子的颜色发生转变,求达到目标状态网格的操作.可用BFS搜索解答,用vector储存每次的操作 #include<bits/stdc++. ...
- Sicily 1444: Prime Path(BFS)
题意为给出两个四位素数A.B,每次只能对A的某一位数字进行修改,使它成为另一个四位的素数,问最少经过多少操作,能使A变到B.可以直接进行BFS搜索 #include<bits/stdc++.h& ...
- Sicily 1051: 魔板(BFS+排重)
相对1150题来说,这道题的N可能超过10,所以需要进行排重,即相同状态的魔板不要重复压倒队列里,这里我用map储存操作过的状态,也可以用康托编码来储存状态,这样时间缩短为0.03秒.关于康托展开可以 ...
- Sicily 1150: 简单魔板(BFS)
此题可以使用BFS进行解答,使用8位的十进制数来储存魔板的状态,用BFS进行搜索即可 #include <bits/stdc++.h> using namespace std; int o ...
随机推荐
- $.get的重写
window.meng = window.meng || {}; (function () { function Get() { this.def = $.Deferred(); } Get.prot ...
- 5.5 Selenium2中的元素定位
WebDriver的更加面向对象的方式大大降低了Selenium的入门门槛,对Web元素的操作也非常之简单易学.实际项目用起来,工作量最大的部分就是你如何解析定位到你的目标项目页面中的各种元素.好比你 ...
- [myeclipse] 官方中文网站
myeclipse官方中文网站:http://www.myeclipsecn.com/
- order by与索引
ORDER BY 通常会有两种实现方法,一个是利用有序索引自动实现,也就是说利用有序索引的有序性就不再另做排序操作了.另一个是把结果选好之后再排序. 用有序索引这种,当然是最快的,不过有一些限制条件, ...
- poj-----(2528)Mayor's posters(线段树区间更新及区间统计+离散化)
Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 43507 Accepted: 12693 ...
- C++编程中const和#define的区别
(1) 编译器处理方式不同 define宏是在预处理阶段展开. const常量是编译运行阶段使用.(2) 类型和安全检查不同 define宏没有类型,不做任何类型检查,仅仅是展开. const常量有具 ...
- script "text/template"
<script type="text/template" id="orgItem"> <div class="{orgClass}& ...
- SQL的常用语句
select * from g_members where id between '16' and '31' order by id desc 倒序排列 select * from g_members ...
- uva 1629
1629 - Cake slicing Time limit: 3.000 seconds A rectangular cake with a grid of m * n <tex2html_v ...
- js构建工具和预编译
Gulp应该和Grunt比较,他们的区别我就不说了,说说用处吧.Gulp / Grunt 是一种工具,能够优化前端工作流程.比如自动刷新页面.combo.压缩css.js.编译less等等.简单来说, ...