hdu 4394 Digital Square【标准DFS】
题目大意
给一个N, 求满足条件的M
样例
Sample Input
3
3
21
25
Sample Output
None
11
5
思路:
从低位向高位宽搜索 , 先试探个位, 如果个位合理, 则试探十位,百位,千位。等等;如果合理就入队列;
一直到搜索到那个数就输出。
代码
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<queue>
using namespace std;
int n;
struct node{long long int m;int len;node(int x, int y):m(x), len(y){}bool operator <(const node &x) const {return m > x.m; //每次选取最小的值来试探}
};
priority_queue<node> q;
void dfs(){while(!q.empty()) q.pop();q.push(node(0,0));while(!q.empty()){node a = q.top();q.pop();int len = 1;for(int i = 0; i < a.len; i++){//代表已经选取了几位,然后后面对更高一位进行操作试探len *= 10;}if((a.m * a.m) % len == n){cout << a.m << endl;return;}for(int i = 0;i < 10; i++){ // 选值 node temp = node(0,0);temp.m = a.m + i * len;temp.len = a.len + 1;if((temp.m * temp.m) % (len * 10) == n % (len * 10)){//代表已经选取到合适的值q.push(temp);//选取到就入队 }}}printf("None\n");
}
int main(){int t;cin >> t;while(t--){scanf("%d", &n);if(n == 2 || n == 3 || n == 7 || n == 8){printf("None\n");}else{dfs(); }}return 0;
}
hdu 4394 Digital Square【标准DFS】相关推荐
- HDU - 4394 Digital Square(数位dfs)
题目链接:点击查看 题目大意:给出N,求满足%的最小M 题目分析:通过(大佬们的)分析可以得到一个结论: N的个位只由M的个位决定,N十位由M的个位和十位决定,N的百位由M的个位十位百位决定,以此类推 ...
- 【HDU - 1455】Sticks (dfs + 剪枝)
题干: George took sticks of the same length and cut them randomly until all parts became at most 50 un ...
- HDU 6386 Age of Moyu DFS+BFS
/** HDU 6386 Age of Moyu DFS+BFS 链接:http://acm.hdu.edu.cn/showproblem.php?pid=6386题意:1-->n的最小换乘次数 ...
- Digital Square HDU - 4394 dfs + 剪枝
一.内容 Given an integer N,you should come up with the minimum nonnegative integer M.M meets the follow ...
- 【HDU 4394】Digital Square(bfs,数位搜索,思维,数学)
题干: Given an integer N,you should come up with the minimum nonnegative integer M.M meets the follow ...
- 【HDU - 1518】Square (经典的dfs + 剪枝)
题干: Given a set of sticks of various lengths, is it possible to join them end-to-end to form a squar ...
- HDU 1426 Sudoku Killer【DFS 数独】
自从2006年3月10日至11日的首届数独世界锦标赛以后,数独这项游戏越来越受到人们的喜爱和重视. 据说,在2008北京奥运会上,会将数独列为一个单独的项目进行比赛,冠军将有可能获得的一份巨大的奖品 ...
- hdu 4358(莫队算法+dfs序列)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4358 解题思路:用dfs求出整棵树的dfs序列,这样以u为根节点的子树就转化到相对应的区间上了.由于是 ...
- HDU(1572),最短路,DFS
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1572 很久没写深搜了,有点忘了. #include <iostream> #include ...
最新文章
- JavaScript事件监听
- centos树莓派安装mysql_用树莓派实现网络批量自动安装CentOS
- span居div中_JavaScript-html Dom中的HTMLCollection和NodeList
- 使用android studio查看内存,Android Studio Profiler使用心得 检测内存泄露问题
- 监控系统安装配置文档(Nagios+Cacti+Nconf)
- VMware12部署windows xp虚拟机
- 让ubuntu在一个窗口下打开多个终端的软件——terminator
- Kotlin — 使用IDEA运行第一个Kotlin程序,打印“Hello World”!
- 解密中国网络游戏业的黑暗骑士:响尾马(下)
- cad 打开硬件加速卡_Win10系统运行CAD不流畅解决方法
- 新浪云存储 php,【PHP】新浪云SAE平台将本地图片和远程图片保存至Storage
- Tensorflow中的数据对象Dataset.shuffle()、repeat()、batch() 等用法
- Livid: 消失的未来
- krpano php,krpano调试模式的开启
- Android实现直播的博文和流程(全过程,超详细/附源码)
- android自定义系统键盘,Android自定义软键盘
- Abaqus 固定云图标尺
- Linux命令ls是什么缩写,linux基本命令ls、pwd、cd、mkdir等
- 导航软件后台播放语音有杂音,卡顿
- 网站关键词优化方法有哪些
热门文章
- python画残差图_seaborn回归图---回归模型图Implot、线性回归图regplot、线性回归残差图residplot...
- delphi 企业微信消息机器人_企业微信群消息机器人发送开源项目
- 模糊测试软件测试_模糊测试
- 定时器实验循环彩灯C语言,单片机实验三-定时器实验
- 2019年第十届蓝桥杯C/C++ 省赛B组真题+题解
- Vivado FPGA基础设计操作流程(1)
- 周纪五 赧王下四十三年(己丑、前272)——摘要
- @Autowired vs @PersistenceContext for EntityManager bean
- 哈夫曼树的创建和哈夫曼树编码及解码
- 最小编辑距离 (MED)实现-Python