赞
踩
提示:牛客OJACM模式练习记录,记录犯错的地方
犯错点:题目要求的是输入一行,所以使用getline来获取一行字符串,而不是cin获取单个字符串;因为此cin使用==空白(空格、制表符、换行符)==来确定字符串的结束位置,所以在当前题意下只能得到一个单词
#include <iostream> #include <string> using namespace std; int main(){ string str; getline(cin, str); // 将一行的数据 赋值给str 字符串 int n = str.size(); int i = n - 1; for(; i >= 0 && str[i] != ' '; i--); cout << n - i - 1 << endl; /* 其他思路 */ string s; while(cin >> s); cout << s.size(); return 0; }
题目
写了个很繁琐的代码,但能AC;下次看下题解将代码精简
#include <string> #include <iostream> #include <algorithm> using namespace std; bool isvalid(string tmp){ if(tmp.size() > 3) return false; if(tmp.size() <= 1) return false; if(tmp.size() == 2){ if((tmp[0] == 'A' || tmp[0] == 'D' || tmp[0] == 'W' || tmp[0] == 'S')) if(isdigit(tmp[1])) return true; } if(tmp.size() == 3){ if((tmp[0] == 'A' || tmp[0] == 'D' || tmp[0] == 'W' || tmp[0] == 'S')) if(isdigit(tmp[1]) && isdigit<
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。