ACM-ICPC Jiaozuo Onsite 2018 F. Honeycomb /*bfs,建图,构造*/






不堪回首第一次区域赛(真哭JJ)
真心态爆炸一场(密码给错了十分钟 不能复制粘贴case linux用到哭 签到签不出来)
所以试了一下文件读入操作。。
题目真不是很难,就是建图稍微要思路清楚一点。。。
#include
using namespace std;
#define FSCI(i,l,r,a) for(int i=l;i<=r;i++) scanf("%d",&a[i])
#define SCI(a) scanf("%d",&a)
#define SCS(a) scanf("%s",a)
#define LL long long
#define mod 1000000007
#define N 1005
/***************************************************************************************************************************************************/
char mp[N*5][N*7];
vectorv[N*N];
int r,c;
int S,E;
int ans=INT_MAX;
int dp[N*N];
//ifstream in("C:\\Users\\RSHS\\Desktop\\input case.txt");
struct no{int index;int step;no(){}; //overwriteno(int a,int b):index(a),step(b){} //overwrite
}node;void readmp(){cin>>r>>c;getchar();for(int i=0;i<4*r+3;i++)cin.getline(mp[i],7000);/*in>>r>>c;in.getline(mp[0],7000); //瞎jier吸收回车for(int i=0;i<4*r+3;i++){in.getline(mp[i],7000);}for(int i=0;i<4*r+3;i++){for(int j=0;jq;q.push({S,1});dp[S]=1;while(!q.empty()){int nowi=q.front().index ,nows=q.front().step;if(nowi==E) {ans=min(ans,nows);}q.pop();for(int i=0;i<(int)v[nowi].size();i++){if(nows+1>T;cin>>T;while(T--){ans=INT_MAX;readmp();initv();bfs();if(ans!=INT_MAX)cout<

突然可以直接next数组在char数组上bfs。可以减少代码量,算了都一样。
想说些什么,还是不奶自己了。
菜就是菜。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
