2022AcWing寒假算法每日一题之1884. COW(附上巧妙的位运算方法)

2022AcWing寒假算法每日一题之1884. COW(附上巧妙的位运算方法),第1张

2022AcWing寒假算法每日一题之1884. COW(附上巧妙的位运算方法

2022AcWing寒假算法每日一题之1884. COW(附上巧妙的位运算方法

题目链接:AcWing1884. COW

思路:

1. 从前往后遍历字符串,‘O’会和前面的‘C’组成‘CO’,前面有几个‘C’的个数就有几个‘CO’,即o+=c;

2. 同理,‘CO’与‘W’组成‘COW’组合,前面有多少个‘CO’,就有多少个‘COW’,即w+=o;

3. 可利用位运算进行简单处理(方法二)

具体代码如下:

#include 
#include 
#include 
#include 
#include 
using namespace std;
int n;
long long c,o,w;//防止溢出
string s;
int main()
{
    cin>>n;
    cin>>s;
    for(int i=0;i 

另外一种巧妙的做法:

利用位运算

‘C’ 是 0x43 ‘O’ 是 0x4f ‘W’ 是 0x57

#include 
#include 
#include 
#include 
#include 
using namespace std;
int n;
long long c,o,w;
string s;
int main()
{
    cin >> n >> s;
    for(int i=0;i					
										


					

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5711557.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-18
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存