codeforces 584C Marina and Vasya
来源:互联网 发布:网络用语开屏 编辑:程序博客网 时间:2024/06/07 01:29
题目链接:
http://codeforces.com/problemset/problem/584/C
题意:
给你两串字符,问你能不能找到另外一串字符,使得这个字符串和其他的两个都T个不同的字母,注意:这里的不同,仅仅指的是该位置上的字母的不同。(题意理解很重要!!!)
题解:
首先需要明确一点,那就是贪心两个共有的字母,然后在这个的基础上,再去考虑其他的情况,可以使用覆盖的方法,进行多次的覆盖。
代码:
#include <cmath>#include <map>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;#define met(a,b) memset(a,b,sizeof(a))#define inf 0x3f3f3f3fconst int maxn = 1e5+10;char s1[maxn],s2[maxn],s3[maxn];int n,t;int main(){ scanf("%d%d",&n,&t); int m=n-t; scanf("%s%s",s1,s2); int k1=0,k2=0; for(int i=0;i<n;i++) { if(s1[i]==s2[i]&&k1<m&&k2<m) { s3[i]=s1[i]; k1++; k2++; } else if(s1[i]!=s2[i]||k1==m) { for(char j='a';j<='z';j++) { if(s1[i]!=j&&s2[i]!=j) { s3[i]=j; break; } } } } if(k1==m&&k2==m) { printf("%s\n",s3); return 0; } for(int i=0;i<n;i++) { if(s1[i]==s2[i]) continue; if(k1<m) { s3[i]=s1[i]; k1++; } else if(k2<m) { s3[i]=s2[i]; k2++; } else { for(char j='a';j<='z';j++) { if(s1[i]!=j&&s2[i]!=j) { s3[i]=j; break; } } } } if(k1<m||k2<m) printf("-1\n"); else printf("%s\n",s3);}
阅读全文
0 0
- Codeforces 584C Marina and Vasya
- codeforces 584C Marina and Vasya
- Codeforces 584C Marina and Vasya 【构造】
- Codeforces 584C Marina and Vasya
- CodeForces 584C - Marina and Vasya(构造)
- codeforces 584C Marina and Vasya
- Codeforces Round #324 (Div. 2) 584C. Marina and Vasya
- CodeForces - 584C Marina and Vasya (模拟)找规律
- Codeforces 584 C Marina and Vasya【构造+贪心】
- Codeforces Round #324 C Marina and Vasya
- codeforces 324# C. Marina and Vasya (贪心)
- Codeforces 584 C. Marina and Vasya (Codeforces Round #324 (Div. 2))
- Codeforces Round #324 (Div. 2)C. Marina and Vasya
- Codeforces Round #324 (Div. 2) C. Marina and Vasya
- Codeforces #324 Div2 C Marina and Vasya(构造)
- Codeforces Round #324 (Div. 2)C. Marina and Vasya
- 【打CF,学算法——二星级】Codeforces 584C Marina and Vasya (简单构造)
- Code Forces 584 C. Marina and Vasya(水~)
- VueJs日志信息模块代码。
- vue实现购物车动画功能
- Java多线程系列--“JUC集合”01之 框架
- Numerically Speaking hdu 1314 大数模拟
- monkeyruuner介绍与应用
- codeforces 584C Marina and Vasya
- C++总结8——shared_ptr和weak_ptr智能指针
- serialVersionUID 的使用
- 安装AndroidStudio2.3.3
- 知乎校招面经,拿到offer
- Android 6.0 运行时权限处理完全解析
- IntelliJ IDE中无法运行java程序
- 判断链表是否带环?若带环求环的长度?若带环求环的入口点?并计算以上每个问题的时间复杂度?
- 基础总结