原题链接

本题关键在于二进制的转化,如果直接枚举每个字母(共7个字母)的20种可能就会TLE

另外需要了解以下公式:

#include <iostream>
#include <cstring>
#include <algorithm>
#include <unordered_map>
#include <map>
#include <vector>
using namespace std;
typedef long long ll;
const int N = 1010;
map<char,int> cnt[2];
string s = "BESIGOM";
int n,res;int main()
{cin >> n;for (int i = 1;i <= n;i ++ ) {char x;int val;cin >> x >> val;cnt[abs(val) % 2][x] ++;}map<char,int> m;for (int i = 0;i < (1 << 7);i ++ ) {//枚举7位二进制的所有可能for (int j = 0;j < 7;j ++ ) m[s[j]] = i >> j & 1;//枚举每一位的值int x = (m['B'] + m['I']) * (m['G'] + m['O'] + m['E'] + m['S']) * m['M'];//优化:由于重复值相加必为偶数,所以值需加不重复的值if (x % 2 == 0) {int sum = 1;for (int j = 0;j < 7;j ++ ) sum *= cnt[i >> j & 1][s[j]];res += sum;//cout << "-----" << '\n';}}cout << res << '\n';return 0;
}

贝茜的报复(dfs + 位运算)相关推荐

  1. 1875.贝茜的报复

    Powered by:NEFU AB-IN Link 文章目录 1875.贝茜的报复 题意 思路 代码 1875.贝茜的报复 题意 农夫约翰和奶牛贝茜喜欢在业余时间互相出数学题. 约翰给贝茜出了一道相 ...

  2. 寒假每日一题——贝茜的报复

    贝茜的报复 问题描述 农夫约翰和奶牛贝茜喜欢在业余时间互相出数学题. 约翰给贝茜出了一道相当难的问题,导致她没能解决. 现在,她希望通过给约翰出一道有挑战性的难题来报复他. 贝茜给了约翰一个表达式 ( ...

  3. USACO2.1【bfs,排序,贪心,dfs,位运算】

    前言 开始刷USACO的题了. 正题 刷前必备技能:OI常识,bfs,dfs,位运算,基础贪心,快速排序. T1:城堡 TheCastleThe CastleTheCastle 评测记录: https ...

  4. 1875 贝茜的报复(dfs、二进制)

    1. 问题描述: 农夫约翰和奶牛贝茜喜欢在业余时间互相出数学题.约翰给贝茜出了一道相当难的问题,导致她没能解决.现在,她希望通过给约翰出一道有挑战性的难题来报复他.贝茜给了约翰一个表达式 (B+E+S ...

  5. AcWing 1875.贝茜的报复

    目录 题目 解题思路 C++代码 Java代码(带注释) 题目 农夫约翰和奶牛贝茜喜欢在业余时间互相出数学题. 约翰给贝茜出了一道相当难的问题,导致她没能解决. 现在,她希望通过给约翰出一道有挑战性的 ...

  6. 1875. 贝茜的报复

    题目描述 农夫约翰和奶牛贝茜喜欢在业余时间互相出数学题. 约翰给贝茜出了一道相当难的问题,导致她没能解决. 现在,她希望通过给约翰出一道有挑战性的难题来报复他. 贝茜给了约翰一个表达式 (B+E+S+ ...

  7. 洛谷P1562 还是N皇后(DFS+状态压缩+位运算)

    八皇后问题的介绍在此不再赘述,只贴一下经典八皇后问题的实现代码(参考刘汝佳 <算法竞赛入门经典>) void search(int i) {if(i>n){ans++;return; ...

  8. 【位运算DFS/DLX】【HDU1426】【数独】

    题意:标准的一道数独题 DFS做法: 将横纵九宫格里的数字用位运算状态压缩,且可以通过逻辑或来确定总共有哪些数字被选择了,很方便也很快,代码如下 #include <cstdio> #in ...

  9. 紫书搜索 习题7-4 UVA - 818 Cutting Chains 暴力+dfs判环+位运算

    题目链接: https://vjudge.net/problem/UVA-818 题意: 选几个圆环去open.然后该圆环和其他就断开了.然后用这些open的圆环去连接剩下的圆环[最后打开的会合上], ...

最新文章

  1. 【重温经典】张小龙:微信背后的产品观
  2. 怎么把 CDialogBar像工具条一样使用,有图有真相
  3. Jquery复习(七)之尺寸
  4. 懂分析、会预测,你见过这样的华为云DAS吗?
  5. ORACLE的分布式管理
  6. HBase之HRegionServer处理put请求
  7. 【python笔记】python基础(注释,缩进,变量,表达式,运算符)
  8. Asp.net 无限级分类
  9. Android第一个程序Say Hello To Android
  10. Okhttp之RouteSelector简单解析
  11. 蓝桥杯 算法训练 斐波那契串
  12. Entry输入框实现登录用户名冷却验证小案例(Tkinter)
  13. 文字转语音怎么真人发声
  14. Visual FoxPro 6.0~9.0解决方案与范例大全写作原稿及光盘下载
  15. 林子雨 慕课答案2021新版
  16. 简单、好用的PHP爬虫框架开发实战:教你轻松抓取 10w+ 美女壁纸!
  17. 微信公众号无法长按发送图片,长安反应慢
  18. 超详细!基于树莓派Python编程使用dht11温湿度模块
  19. mysql启动报sock_mysql启动错误:mysql.sock丢失
  20. P68是什么意思 IP67和IP68等级有什么区别

热门文章

  1. GitHub的使用方法
  2. 简单工厂 工厂方法 抽象工厂
  3. 英国哪些大学本科可以用ib English hl 成绩代替雅思成绩?
  4. 高斯模糊(高斯滤波)的原理与算法
  5. 电子行业数字工厂管理系统有哪些优点和不足
  6. 第八章 界面外观——Qt
  7. Java核心机制(1)
  8. 阿里巴巴面试java研发工程师实录
  9. RTOS系统全Thumb编译+Neon加速火力全开
  10. 学习篇——了解OKR