网易的题会上线么..好想试试括号那题能不能AC了...

只过了40%,回来发现少了一句话,啊....心累
全部评论
已经放出来了 https://www.nowcoder.com/contestRoom
点赞 回复 分享
发布于 2017-09-09 22:17
int main() { string str; cin >> str; int size = str.size(), count = 0; if (size == 4) { cout << 1; return 0; } vector<int> arr(size); int index = 0; for (string::iterator it = str.begin(); it != str.end(); it++) { if (*it == '(') arr[index] = 1; else if (*it == ')') arr[index] = -1; index++; } int last = -1, cursum = 0, cursum_cpy = 0;//last判断连续区域,cursum判断当前字符串合法性 for (int i = 0; i<size; i++) { if (arr[i] == last) continue; last = arr[i]; for (int j = 0; j<i; j++) cursum += arr[j]; //往后 cursum_cpy = cursum; for (int j = i + 1; j<size; j++) { cursum += arr[j]; if (cursum >= 0) { if (arr[i] != arr[j]) count++; } else break; } //往前 cursum = cursum_cpy; if (i>0) cursum -= arr[i - 1]; else continue; for (int j = i - 2; j >= 0; j--) { if (cursum + arr[i] < 0) break; cursum -= arr[j]; if (cursum + arr[i] >= 0) { if (arr[i] != arr[j]) count++; } else break; } } cout << count << endl; return 0; }
点赞 回复 分享
发布于 2017-09-10 20:56
这题怎么做啊,想半天不懂啊
点赞 回复 分享
发布于 2017-09-09 22:15
第三题初始值设置小了。。习惯用maxvalue结果这次设置99999 心态炸了
点赞 回复 分享
发布于 2017-09-09 18:07

相关推荐

05-29 20:34
门头沟学院 C++
KarlAllen:得做好直接春招的准备。学历差的话,一是面试要求会比学历好的严格不少,二是就算面试通过了也会被排序。总之暑期和秋招对于学历差的就是及其不友好
点赞 评论 收藏
分享
哥_留个offer先:跟他说,你这个最好用c#,微软就用c#Java不适合这个项目
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务