牛客 19-5-3 QAQ

#include<iostream>
#include<cstring>
using namespace std;
typedef long long LL;
int main()
{
char a[];
scanf("%s",a);
LL s1=,sum=,len=strlen(a);
if(a[]=='Q') s1++;
for(int i=;i<len;i++)
{
if(a[i]=='Q'){s1++;}
if(a[i]=='A'&&s1!=)
{
LL s2=,s=s1;
if(a[i-]=='Q') s--;// 小心越界
for(int j=i+;j<strlen(a);j++)
if(a[j]=='Q') s2++;
sum+=s*s2;
}
}
cout<<sum<<endl;
}
// 超时代码
#include<iostream>
#include<string>
using namespace std;
int count=;
void bfs(string s,int i,int flag)
{
if(i>=(int)s.length()) return ;
if(flag==)
{
if(s[i]=='Q')
{
bfs(s,i+,flag+);
}
else bfs(s,i+,flag);
}
if(flag==)
{
if(s[i]=='A')
{
bfs(s,i+,flag+);
}
bfs(s,i+,flag);
}
if(flag==)
{
if(s[i]=='Q')
{
count++;
}
bfs(s,i+,flag);
}
}
int main()
{
string s;
cin>>s;
for(int i=;i<s.length()-;i++)
bfs(s,i,);
cout<<count<<endl;
}
相比两个方法 第一个少了回溯次;
B题:

#include <iostream>
using namespace std;
#define N 'W'+ 'W' + '#'
#define FOR(i,l,r) for(int i = l;i < r;i++)
char a[][];
int judge()
{
if(a[][] + a[][] + a[][] == N || a[][] + a[][] + a[][] == N)return ;
FOR(i,,)
if(a[i][]+a[i][]+a[i][]==N || a[][i]+a[][i]+a[][i] == N)return ;
return ;
}
int main()
{
int T;
scanf("%d",&T);
while(T--)
{
int flag = ;
FOR(i,,)scanf("%s",a[i]);
if(!judge())
{
FOR(i,,)FOR(j,,)
if(a[i][j] == 'W')
{
a[i][j]='#';
if(judge())flag = ;
a[i][j]='W';
}
flag?puts("Emmm"):puts("Alice");
}
else puts("Bob");
}
return ;
}
代码精炼。正常要写100+;
牛客 19-5-3 QAQ的更多相关文章
- 算法题 19 二叉平衡树检查 牛客网 CC150
算法题 19 二叉平衡树检查 牛客网 CC150 实现一个函数,检查二叉树是否平衡,平衡的定义如下,对于树中的任意一个结点,其两颗子树的高度差不超过1. 给定指向树根结点的指针TreeNode* ro ...
- 牛客小白月赛19 E 「火」烈火燎原 (思维,树)
牛客小白月赛19 E 「火」烈火燎原 (思维,树) 链接:https://ac.nowcoder.com/acm/contest/2272/E来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空 ...
- 【面试笔试算法】牛客网一站通Offer编程题2016.4.19
牛客网一站通offer (一)字符串变形 1. 题目: 对于一个给定的字符串,我们需要在线性(也就是O(n))的时间里对它做一些变形.首先这个字符串中包含着一些空格,就像"Hello Wor ...
- 牛客~~wannafly挑战赛19~A 队列
链接:https://www.nowcoder.com/acm/contest/131/A来源:牛客网 题目描述 ZZT 创造了一个队列 Q.这个队列包含了 N 个元素,队列中的第 i 个元素用 Qi ...
- 牛客网挑战赛19 B,C,F
链接:https://www.nowcoder.com/acm/contest/131/B来源:牛客网 矩阵 M 包含 R 行 C 列,第 i 行第 j 列的值为 Mi,j. 请寻找一个子矩阵,使得这 ...
- 牛客网 --java问答题
http://www.nowcoder.com/ 主要是自己什么都不怎么会.在这里可以学习很多的! 第一天看题自己回答,第二天看牛客网的答案! 1 什么是Java虚拟机?为什么Java被称作是“平台无 ...
- 牛客小白月赛13 小A的回文串(Manacher)
链接:https://ac.nowcoder.com/acm/contest/549/B来源:牛客网 题目描述 小A非常喜欢回文串,当然我们都知道回文串这种情况是非常特殊的.所以小A只想知道给定的一个 ...
- 牛客小白月赛13 小A的最短路(lca+RMQ)
链接:https://ac.nowcoder.com/acm/contest/549/F来源:牛客网 题目描述 小A这次来到一个景区去旅游,景区里面有N个景点,景点之间有N-1条路径.小A从当前的一个 ...
- 牛客练习赛43 Tachibana Kanade Loves Game (简单容斥)
链接:https://ac.nowcoder.com/acm/contest/548/F来源:牛客网 题目描述 立华奏是一个天天打比赛的萌新. 省选将至,萌新立华奏深知自己没有希望进入省队,因此开始颓 ...
- 牛客练习赛31 D 神器大师泰兹瑞与威穆 STL,模拟 A
牛客练习赛31 D 神器大师泰兹瑞与威穆 https://ac.nowcoder.com/acm/contest/218/D 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 26214 ...
随机推荐
- Http的简单介绍
之前写过一篇使用HttpListener作为简单的HTTP服务器,后面实际项目中就用到了,测试发现,在Win7下如果不是以管理员权限运行程序,使用HttpListener是会出错了. 所以就很好奇HT ...
- Entity Framework Core Relationship的学习笔记
说明 此例筛选了感兴趣及常用部分 参考文献 https://docs.microsoft.com/en-us/ef/core/modeling/relationships One to Many Ma ...
- O024、Nova组件如何协同工作
参考https://www.cnblogs.com/CloudMan6/p/5415836.html Nova 物理部署方案 前面大家已经看到 Nova 由很多子服务组成,我们也知道OpenS ...
- 15 Python之内置函数
思维导图: https://www.processon.com/mindmap/5c10cb5ee4b0090a2c9db92f 1. 匿名函数统一的名字是:<lambda> 使用场景: ...
- 基于Websocket的websocketd
WebSocket是什么 WebSocket是HTML5下面的一种技术,设计出来的目的就是要取代轮询和 Comet 技术,使客户端浏览器具备像 C/S 架构下桌面系统的实时通讯能力. 浏览器通过 Ja ...
- python cv2截取不规则区域图片
知识掌握 cv2.threshold()函数: 设置固定级别的阈值应用于多通道矩阵,将灰度图像变换二值图像,或去除指定级别的噪声,或过滤掉过小或者过大的像素点. Python: cv2.thresho ...
- shell脚本中的数组
以下命令,都是以数组array=("20150417" "20150416" "20150415")为例. 注意bash中只支持一维数组,没 ...
- Linux三剑客:grep、awk、sed
---------------------------------------------------------------------------------------------------- ...
- android app 闪屏
main activity package com.splash.screen; import android.app.Activity; import android.content.Intent; ...
- Mysql数据类型 来自官方手册5.6
整形的取值范围: 定点数值(精确): 在MySQL中,NUMERIC被实现为DECIMAL,所以关于DECIMAL的以下说明同样适用于NUMERIC. MySQL以二进制格式存储DECIMAL值. ...