此问题由洛谷p1746引出(之前出过类似问题没在意)

传送门

以下是两个差不多的程序,(只有main函数中的输入不同,第一个程序迷之WA,第二个程序AC)

#include <bits/stdc++.h>
using namespace std;
int qx,qy,zx,zy;
int n,m;
int xx[] = {,,,-,},yy[] = {,-,,,};
char a[][];
queue<int>q;
int tot[][];
int qx,qy,zx,zy;
void gs() {
while(q.empty() == ) {
int x = q.front();
q.pop();
int y = q.front();
q.pop();
for(int k = ; k <= ; k++) {
int x2 = x + xx[k];
int y2 = y + yy[k];
if(a[x2][y2] == && x2 >= && y2 >= && x2 <=n && y2 <= m) {
q.push(x2);
q.push(y2);
tot[x2][y2] = tot[x][y] + ;
a[x2][y2] = ;
}
if(x2 == zx && y2 == zy) {
tot[x2][y2] = tot[x][y] + ;
cout<<tot[x2][y2]<<endl;
while(q.empty() == ){
q.pop();
}
memset(tot,,sizeof(tot));
return ;
}
}
}
cout<<-<<endl;
return ;
}
int main() {
scanf("%d%d",&n,&m);
getchar();
for(int i=; i<=n; i++) {//单个字符输入+getcahr()读入换行符
for(int j=; j<=m; j++) {
scanf("%c",&a[i][j]);//这里改成getchar()也不对
}
getchar();
}
gs();
return ;
}
#include <bits/stdc++.h>
using namespace std;
int qx,qy,zx,zy;
int n;
int xx[] = {,,,-,},yy[] = {,-,,,};
char a[][];
queue<int>q;
int tot[][];
void gs() {
while(q.empty() == ) {
int x = q.front();
q.pop();
int y = q.front();
q.pop();
for(int k = ; k <= ; k++) {
int x2 = x + xx[k];
int y2 = y + yy[k];
if(a[x2][y2] == '' && x2 >= && y2 >= && x2 <=n && y2 <= n) {
q.push(x2);
q.push(y2);
tot[x2][y2] = tot[x][y] + ;
a[x2][y2] = '';
}
if(x2 == zx && y2 == zy) {
tot[x2][y2] = tot[x][y] + ;
cout<<tot[x2][y2];
return ;
}
}
}
}
int main() {
scanf("%d",&n);
getchar();
for(int i=; i<=n; i++) {
scanf("%s", a[i] + );//整个字符串输入
}
scanf("%d%d%d%d",&qx,&qy,&zx,&zy);
q.push(qx);
q.push(qy);
gs();
return ;
}

来自dalao的发言

小结:编译器永远没错,评测机可能有错  别用getchar()

洛谷评测机BUG(应该是)的更多相关文章

  1. 洛谷 P3684 机棚障碍Hangar Hurdles [CERC2016] 图论

    正解: 解题报告: 传送门! 首先不难想到这题主要有两个问题需要解决,一个是预处理出各个点的箱子半径最大值,一个是求ans 然后分别港下QwQ 首先关于预处理要说下昂 预处理有三种方法,分别港下 第一 ...

  2. 洛谷P3372 【模板】线段树 1

    P3372 [模板]线段树 1 153通过 525提交 题目提供者HansBug 标签 难度普及+/提高 提交  讨论  题解 最新讨论 [模板]线段树1(AAAAAAAAA- [模板]线段树1 洛谷 ...

  3. 洛谷 P3695 CYaRon!语 题解 【模拟】【字符串】

    大模拟好啊! 万一远古计算机让我写个解释器还真是得爆零了呢. 题目背景 「千歌です」(我是千歌).「曜です」(我是曜).「ルビィです」(我是露比).「3人合わせて.We are CYaRon! よろし ...

  4. 洛谷 2216 [HAOI2007]理想的正方形

    题目戳这里 一句话题意 给你一个a×b的矩形,求一个n×n的子矩阵,矩阵里面的最大值和最小值之差最小. Solution 这个题目许多大佬都是单调队列,但是我不是很会,只好用了比较傻逼的方法: 首先我 ...

  5. 【项目】关于TeenCode第二代评测机的技术分析

    晚上睡不着觉,仔细研读了洛谷的第四代评测机技术分析后,突然发现自己写的TeenCode评测机竟然有这么多地方可以改进,这不得不让我诞生了实现第二代TeenCode评测机的想法.[第一代评测机挺可怜的, ...

  6. 洛谷 P1379 八数码难题 Label:判重&&bfs

    特别声明:紫书上抄来的代码,详见P198 题目描述 在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字.棋盘中留有一个空格,空格用0来表示.空格周围的棋子可以移到空格中.要求解的问题是:给 ...

  7. 洛谷 P1392 取数

    题面 在做这道题前,先要会他的弱化版(实际一模一样,只是愚蠢的洛谷评测级别差了一档(睿智如姬无夜)) ----------------------------------弱化版------------ ...

  8. BZOJ4071 & 洛谷3644 & UOJ112:[APIO2015]巴邻旁之桥——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4071 https://www.luogu.org/problemnew/show/P3644 ht ...

  9. 【洛谷】CYJian的水题大赛 解题报告

    点此进入比赛 \(T1\):八百标兵奔北坡 这应该是一道较水的送分题吧. 理论上来说,正解应该是DP.但是,.前缀和优化暴力就能过. 放上我比赛时打的暴力代码吧(\(hl666\)大佬说这种做法的均摊 ...

随机推荐

  1. sk-learn 决策树的超参数

    一.参数criterion:特征选择标准,[entropy, gini].默认gini,即CART算法. splitter:特征划分标准,[best, random].best在特征的所有划分点中找出 ...

  2. http 400错误【原】

    http 400错误现象: 使用java代码访问某PDF文件地址, 报了http 400错误 ,浏览器却能正常访问 . 所以猜测浏览器对地址做了额外处理. 异常代码 String srcUrl = & ...

  3. 【Unity游戏开发】tolua之wrap文件的原理与使用

    本文内容转载自:https://www.cnblogs.com/blueberryzzz/p/9672342.html .非常感谢原作者慷慨地授权转载,比心!@blueberryzzz 是位大神,欢迎 ...

  4. Java 程序国际化

    相关类:  java.util.Locale   java.util.ResourceBundle  操作步骤: 可以新建一个包, 如 res , 添加 .properties 文件 在其中添加键值对 ...

  5. JGUI源码:开发中遇到的问题(11)

    1.IE8下浏览器下css body边缘要留一个像素,如果不留的话,很有可能看不到最边缘的像素. 2.同一种颜色在深色背景和浅色背景下给人的感觉不一样,在深色背景下,给人感觉特别亮,所以深色背景下的颜 ...

  6. 网络结构---从alexnet 到resnet

    AlexNet-> vgg vgg 采用更小的卷积核,加深网络深度,但两者的共同点都是卷积层+pooling层最后接上fc 层的结构 Network in network ->google ...

  7. Java(15) 多态

    一.多态  1.1 多态:一个事物的多种形态  1.2 多态的表现 行为(方法)多态:重写和重载. 引用多态(动态绑定):编译时的类型和运行时不一致的这种现象 例:父类 = 子类 Pet p = ne ...

  8. Lucene的中文分词器

    1 什么是中文分词器 学过英文的都知道,英文是以单词为单位的,单词与单词之间以空格或者逗号句号隔开. 而中文的语义比较特殊,很难像英文那样,一个汉字一个汉字来划分. 所以需要一个能自动识别中文语义的分 ...

  9. 002 requests的使用方法以及xpath和beautifulsoup4提取数据

    1.直接使用url,没用headers的请求 import requests url = 'http://www.baidu.com' # requests请求用get方法 response = re ...

  10. golang interface类型转string等其他类型

    inter 是interface类型,转化为string类型是: str := inter .(string) 转为其他类型也类似