博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ASCII Area UVA - 1641 WA原因总结(没有脑子
阅读量:4143 次
发布时间:2019-05-25

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

https://vjudge.net/problem/uva-1641
#include
#include
using namespace std;int main(){ int n, w; while(cin >> n >> w) { int cnt = 0; string s; for (int i = 1; i <= n; i++) { cin >> s; bool flag = false; for (int j = 0; j < w; j++) { if (s[j] == '/' || s[j] == '\\') { cnt++; flag = !flag; } else if (s[j] == '.'&&flag == true) cnt += 2; // else if (s[j] == '\\' || s[j] == '/') //{ //cnt++; flag = false; //} //否则永远不会跑到这个else if 来啊,一直就是true } } cout << cnt / 2 << endl;//every time it++ or +2 and we know it must be % by 2} return 0;}
《没有脑子》
WA不要钱的吗???
1  for循环里面用1很爽但是string是按照0开始的
2  最开始想的第一行只能是/\/\/\,其实完全没必要区分对待= =
结果每一行要么'/'要么'\\'(此处要用到转义字符)
3  Input
The input file contains several test cases, each of them as described below.
不看题的哦?有说了数据是好几行,写个while cin又不复杂,wa不要钱吗?
4 cnt/2就是cnt/2 不要有啥侥幸心理
5  不要特殊性,要普遍化
6 if (s[j] == '/' || s[j] == '\\')
else if (s[j] == '\\' || s[j] == '/')
这样的话肯定跑不到else if里面啊。。。
并且,可能有多个- 直接q=!q就好了(比flag还省了三个字母
否则你一直只是true跳不出去的!
其实你能想的出来。别怕 没有那么复杂
思维要开阔嘛。不要局限在样例
最后附赠
10 22
....... / \.... / \.......
.......\.\.. / . / .......
. / \ / \ / \ / . / ..\.\ / \ / \ / \.
.\.......\.. / ....... / .
..\.......\ / ....... / ..
.. / ................\..
. / ..................\.
.\ / \ / \ / \.. / \.. / \ / \ / \ / .
....... / . / ..\.\.......
.......\ / ....\ / .......

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

你可能感兴趣的文章
ideas about sharing software
查看>>
different aspects for software
查看>>
To do list
查看>>
Study of Source code
查看>>
如何使用BBC英语学习频道
查看>>
spring事务探索
查看>>
浅谈Spring声明式事务管理ThreadLocal和JDKProxy
查看>>
初识xsd
查看>>
java 设计模式-职责型模式
查看>>
构造型模式
查看>>
svn out of date 无法更新到最新版本
查看>>
java杂记
查看>>
RunTime.getRuntime().exec()
查看>>
Oracle 分组排序函数
查看>>
删除weblogic 域
查看>>
VMware Workstation 14中文破解版下载(附密钥)(笔记)
查看>>
日志框架学习
查看>>
日志框架学习2
查看>>
SVN-无法查看log,提示Want to go offline,时间显示1970问题,error主要是 url中 有一层的中文进行了2次encode
查看>>
NGINX
查看>>