当前位置: 首页 > news >正文

免费自建网站工具网页设计与制作书

免费自建网站工具,网页设计与制作书,wordpress简约清爽主题,关键词排名推广方法感觉这道题跟之前有一题特别像,都是异或哈希感觉这种题应该很典,记录一下(66条消息) Codeforces Round #841 (Div. 2) and Divide by Zero【异或差分动态map维护】 2022 C. Even Subarrays_lamentropetion的博客-CSDN博客Problem - F - Codeforces题意&a…

感觉这道题跟之前有一题特别像,都是异或哈希

感觉这种题应该很典,记录一下

(66条消息) Codeforces Round #841 (Div. 2) and Divide by Zero【异或差分+动态map维护】 2022 C. Even Subarrays_lamentropetion的博客-CSDN博客

Problem - F - Codeforces

题意:

给你n个字符串,求对 (i, j) 的数量,使得

c[i] = s[i] + s[j] (两个字符串串联起来)

1.c[i]的长度为奇数

2. c[i] 所包含的字符种类恰好是 25 个

3. c[i] 所包含的每种字符的出现次数都为奇数

思路:

首先,目标状态是不确定的,不知道目标状态少哪个字符,因此我们去枚举少了哪个字符

当2和3都满足时,1一定满足

确定完目标状态之后,注意到我们要去n^2枚举两个指针,那么按照套路的做法,我们去枚举其中一个指针,然后去考虑限定条件来得到另一个指针

它的限定条件和全局的哈希有关,因此我们去维护全局的哈希

那么,全局的哈希去维护什么值呢?很明显是去维护每个字符是否出现以及每个字符的出现次数的奇偶性

a[i]表示每个字符串中每个字符是否出现,b[i]表示每个字符串中字符的出现次数的奇偶性

所以在枚举之前,可以先去预处理这两个哈希

考虑去枚举i,确定了两个字符串连起来的状态,我们怎么去确定j

即s[j]的限定条件是什么

  1. 每种字符出现次数为奇数

  1. s[i]和s[j]的字符种类加起来必须有25种

假设 s[i] 对应的 b[i] 是 k,和法的 c[i] 对应的 b[i] 是 q, s[j] 对应的 b[j] 是 p,那 s[i] + s[j] 对应的 b[i] 其实就是 k^p

因此直接去维护动态map就能计数出所有满足条件的对数

当然不能忘记清空cnt数组

Code:

#include <iostream>
#include <cstring>
#include <cstdio>
#include <vector>
#include <map>
#include <queue>
#include <set>
//#define int long long
using namespace std;
using i64 = long long;
const int mxn=1e6+10;
const int mxe=1e6+10;
const int mod=1e9+7;string s;
int n;
int a[mxn],b[mxn],cnt[1<<26];
void solve(){s.clear();memset(a,0,sizeof(a));memset(b,0,sizeof(b));memset(cnt,0,sizeof(cnt));cin>>n;for(int i=1;i<=n;i++){cin>>s;for(int j=0;j<s.size();j++){a[i]|=(1<<(s[j]-'a'));b[i]^=(1<<(s[j]-'a'));}}i64 ans=0;for(int i=0;i<26;i++){int S=(1<<26)-1-(1<<i);for(int j=1;j<=n;j++){if(!((a[j]>>i)&1)){cnt[b[j]]++;ans+=cnt[S^b[j]];}}for(int j=1;j<=n;j++){if(!((a[j]>>i)&1)){cnt[b[j]]--;}}}cout<<ans<<'\n';
}
signed main(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int __=1;//cin>>__;while(__--)solve();return 0;
}

http://www.yayakq.cn/news/854497/

相关文章:

  • 天河区门户网站苏州公司网站建设电话
  • 湖南营销型网站建设 在线磐石网络建站快车的使用方法
  • 湖北洪湖市建设局网站网站建设网页模板下载
  • 网站布局怎么设计福田网站-建设深圳信科
  • wordpress信息发布系统关键词的优化方案
  • 外国人做那个的视频网站云霄网站建设
  • 个人网站有自己服务器是不是就不需要虚拟主机菜鸟html在线编辑器
  • 小企业网站建设菌算织梦网站入侵
  • 有什么公司建网站商城开发外包
  • 如何进入公司网站的后台h5技术建设网站
  • 网站域名注册商wordpress美容主题
  • 做微课常用的网站网站建设项目可行性报告
  • 许昌网站设计制作太仓家政保洁公司
  • 宿迁专业网站三合一建设多个wordpress用户
  • 如何用jsp做简单的网站seo建站教学
  • 国家建设部网站平台做网站外国的服务器
  • 广州有网站建设学校品牌建设总结
  • 网站公司销售长沙市招聘网
  • 招聘网站做招聘顾问家教网站建设
  • 企业网站seowordpress充值会员插件
  • 华强北 做网站做外贸学网站
  • 品牌型网站开发高端品牌网站建设兴田德润可信赖
  • 重庆做网站嘉兴公司建设厅三类人员网站
  • 网站上的图片格式怎么做深圳市手机网站建设公司
  • app商城需要手机网站吗淘宝产品页面设计
  • 四川网站建设咨询南康网站制作
  • 宁波学校网站建设种子网站模板
  • 聊城网站建设项目石家庄今天又发现一例
  • 网站建设需要代码wordpress自动添加动态内容
  • 弄一个关于作文的网站怎么做足球比赛直播在哪看