CF979B Treasure Hunt(贪心 思维)

简介: CF979B Treasure Hunt(贪心 思维)

linkkkk

题意:

20200401134307494.png

思路:

贪心的考虑,尽可能的将字符串变成出现最多的字母是最优的。

对于每一个字符串记录一下长度和出现最多的字母个数,最大美丽值就是m i n ( 长 度 , 出 现 最 多 字 母 个 数 + 操 作 次 数 )

如果仅仅出现了一种字母,仅操作一次的话,最大值就是长度− 1

代码:

#include<bits/stdc++.h>
using namespace std;
string s[4];
int n;
struct node{
  int len,id;
}a[4];
bool cmp(node a,node b){
  return a.len>b.len;
}
int cul(string s){
  int cnt=0,len=s.size();
  map<int,int>mp;
  for(int i=0;s[i];i++){
    mp[s[i]]++;
    cnt=max(cnt,mp[s[i]]);
  }
  if(mp.size()==1&&n==1) return len-1;
  return min(len,cnt+n);
}
string name[]={"","Kuro","Shiro","Katie"};
int main(){
  cin>>n;
  for(int i=1;i<=3;i++){
    cin>>s[i];
    a[i].len=cul(s[i]);
    a[i].id=i;
  }
  sort(a+1,a+1+3,cmp);
  if(a[1].len!=a[2].len) cout<<name[a[1].id]<<endl;
  else cout<<"Draw";
  return 0;
}
目录
相关文章
|
7月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-529 DOTA
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-529 DOTA
39 0
|
7月前
|
存储 算法 C语言
数据结构与算法②(复杂度相关OJ)(六道数组OJ题)(上)
数据结构与算法②(复杂度相关OJ)(六道数组OJ题)
63 2
|
7月前
|
存储 算法
数据结构与算法②(复杂度相关OJ)(六道数组OJ题)(下)
数据结构与算法②(复杂度相关OJ)(六道数组OJ题)
38 0
|
7月前
|
人工智能 算法 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-994 最大分解
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-994 最大分解
56 1
|
7月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-545 IQ
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-545 IQ
56 0
|
7月前
|
人工智能
倍增LCA受到启发的一题
倍增LCA受到启发的一题
35 0
|
7月前
【每日一题Day154】LC1626无矛盾的最佳球队 | 动态规划
【每日一题Day154】LC1626无矛盾的最佳球队 | 动态规划
40 0
|
算法 C++
剑指offer(C++)-JZ47:礼物的最大价值(算法-动态规划)
剑指offer(C++)-JZ47:礼物的最大价值(算法-动态规划)
|
算法 C++
剑指offer(C++)-JZ71:跳台阶扩展问题(算法-动态规划)
剑指offer(C++)-JZ71:跳台阶扩展问题(算法-动态规划)
|
人工智能 BI
CF1438B Valerii Against Everyone(考察数学分析问题)
CF1438B Valerii Against Everyone(考察数学分析问题)
72 0