博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
血的教训!!!Hdu1043
阅读量:3961 次
发布时间:2019-05-24

本文共 1120 字,大约阅读时间需要 3 分钟。

老实说第一眼看到这个题,脑子里第一时间就想到了BFS,但是最后AC真的十分艰辛,中间遇到了很多奇葩的问题。下面一一道来我在此题的收获

#include
#include
#include
#include
#include
#include
using namespace std;char a[10];char b[20];int dx[] = { -1,1,0,0};int dy[] = { 0,0,-1,1};map
Map;queue
q;int find(string s){ for(int i=0;i
=0&&y<=2&&y>=0){ string ss = tem; swap(ss[i*3+j],ss[x*3+y]); int idx = getIndex(ss); if(Map.count(idx)==0){ Map[idx] = Map[id]+getChar(k); q.push(ss); } } } }}int main(){ init(); while(gets(b)!=NULL){ int num = 0; string s; for(int i=0;i
=0;i--) printf("%c",ss[i]); printf("\n"); }else{ printf("unsolvable\n"); } } system("pause");}

教训1

以后碰到这种不知道输入多少个用例的以字符串形式接受的题目,不要用Scanf与EOF搭配,因为有空格就不管用(没空格还行),用while(gets(s)!=NULL),像我这个sb就遇到了这个问题,一直报错output limiit exceed(因为一直输入不停止呀md)
教训2
对于map<string,string>可能会超时,以后遇到这样的尽量使用map<int,string>这样的,使用康拓转换也可,实在不行那就nmd直接map<string,string>
教训3
对于有很多数据庸碌输入,要及时每次开始前初始化到正确的状态,切记。
教训4
对于那种把最终状态给你了,初态不太清楚的如果没思路就想着逆向思维。
教训5
一定要仔细呀,nmd,int dx[] = {-1,1,0,0};int dy[] = {0,0,-1,1};这里应改依次对应
{‘d’,‘u’,‘r’,‘l’},不是{‘l’,‘r’,‘d’,‘u’},睁大眼睛看好了,mmp

就这样了,长点心吧,我是废物,呜呜呜呜~~

转载地址:http://lllzi.baihongyu.com/

你可能感兴趣的文章
[Linux] 常用 linux 系统命令及维护备忘
查看>>
[Linux] 关于 Ext4 HowTo
查看>>
[杂记] 新年物语&关于Mysql引擎性能测试
查看>>
[心得] 近期更新&关于Infobright
查看>>
[杂记] 流量统计 & 短信接口
查看>>
[中间件] 消息处理利器 ActiveMQ 的介绍 & Stomp 协议的使用
查看>>
[设计] 原型界面设计利器 Balsamiq Mockups 推荐
查看>>
[闲话] 在西方的程序员眼里,东方的程序员是什么样的
查看>>
[管理] 成功之路的探寻 —— “三力” 理论
查看>>
[连载] Socket 深度探索 4 PHP (一)
查看>>
[无线] Android 系统开发学习杂记
查看>>
[无线] 浅析当代 LBS 技术
查看>>
[杂感] 缅怀乔布斯
查看>>
[无线] 让Android支持cmwap上网
查看>>
[无线] AndroidManifest.xml配置文件详解
查看>>
[移动] Mosquitto简要教程(安装/使用/测试)
查看>>
[HTML5] 关于HTML5(WebGL)的那点事
查看>>
自我反思
查看>>
初识网络编程
查看>>
东北赛选拔教训
查看>>