首页 > 其他 > 详细

Codeforces Round #553 (Div. 2) A题

时间:2019-04-27 11:36:10      阅读:117      评论:0      收藏:0      [点我收藏+]

题目网址:http://codeforces.com/contest/1151/problem/A

题目大意:给定一个由大写字母构成的字符串和它的长度,有这样的操作,使任意一个字母变成与其相邻的字母,默认A与Z相邻,问最少多少次操作使得有字串是ACTG?

题解:数据量小,暴力即可,即从左向右扫,四个一组进行判断,注意,扫到Z要分析两种情况。

技术分享图片
 1 #include<bits/stdc++.h>
 2 #define ll long long
 3 using namespace std;
 4 string a="ACTG";
 5 int main()
 6 {
 7     int n,ans=0,res=1000;
 8     string s;
 9     cin>>n;
10     cin>>s;
11     for(int i=0;i<=n-4;i++) {
12         ans=0;
13         for(int j=0;j<=3;j++) {
14             ans+=min(abs(s[i+j]-a[j]),26-abs(s[i+j]-a[j]));
15         }
16         res=min(res,ans);
17     } 
18     cout<<res<<endl;
19     return 0;
20 } 
View Code

 

Codeforces Round #553 (Div. 2) A题

原文:https://www.cnblogs.com/duxing201806/p/10778071.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!