博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces Round #207 (Div. 1) B. Xenia and Hamming(gcd的运用)
阅读量:5158 次
发布时间:2019-06-13

本文共 742 字,大约阅读时间需要 2 分钟。

题目链接: 

题意: 要求找到复制后的两个字符串中不同样的字符

思路: 子问题: 在两串长度是最大公倍数的情况下, 求出一个串在还有一个串中反复字符的个数

CODE:

#include 
#include
#include
#include
using namespace std;#define M 1000006int com[M][26];int gcd(int a,int b){ return b==0?

a:gcd(b,a%b); } int main() { long long n,m; string x,y; while(~scanf("%I64d%I64d",&n,&m)) { cin>>x>>y; memset(com,0,sizeof(com)); int lenx=x.size(),leny=y.size(); long long g=gcd(lenx,leny); long long ans=lenx/g*leny; long long a=ans; for(int i=0;i<lenx;i++) //巧妙的处理~将两串中反复的字符储存起来 com[i%g][x[i]-'a']++; for(int i=0;i<leny;i++) ans-=com[i%g][y[i]-'a']; printf("%I64d\n",ans*(n*lenx/a)); } return 0; }

转载于:https://www.cnblogs.com/lytwajue/p/6698584.html

你可能感兴趣的文章
CodeIgniter学习笔记(四)——CI超级对象中的load装载器
查看>>
.NET CLR基本术语
查看>>
ubuntu的home目录下,Desktop等目录消失不见
查看>>
建立,查询二叉树 hdu 5444
查看>>
[Spring框架]Spring 事务管理基础入门总结.
查看>>
2017.3.24上午
查看>>
Python-常用模块及简单的案列
查看>>
LeetCode 159. Longest Substring with At Most Two Distinct Characters
查看>>
LeetCode Ones and Zeroes
查看>>
基本算法概论
查看>>
jquery动态移除/增加onclick属性详解
查看>>
JavaScript---Promise
查看>>
暖暖的感动
查看>>
Java中的日期和时间
查看>>
Django基于admin的stark组件创建(一)
查看>>
PAT L2-016 愿天下有情人都是失散多年的兄妹
查看>>
抛弃IIS,利用FastCGI让Asp.net与Nginx在一起
查看>>
C. Tanya and Toys_模拟
查看>>
springboot jar包运行中获取资源文件
查看>>
基于FPGA实现的高速串行交换模块实现方法研究
查看>>