kinging,字符查找类

链接:https://ac.nowcoder.com/acm/contest/6874/G

题目描述
牛牛注射了第二支虚空基因组,重新夺回了王之力,而牛能则想为王的诞生献上礼炮!
有一串长度为nn的小写字母组成的字符串,牛能可以从中挑选‘k’ ‘i’ ‘n’ ‘g’四个字符组成一支礼炮,或者从中挑选‘k’ ‘i’ ‘n’ ‘g’ ‘i’ ‘n’ ‘g’七个字符组成两支礼炮。请问牛能为王的诞生最多能献上多少礼炮?

输入描述:
第一行一个正整数nn,表示字符串长度
第二行一串只含有小写字母的字符串。

import java.io.*;
import java.util.*;
public class Main {
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        String a = sc.nextLine();
        int n = Integer.parseInt(a);
        String s = sc.nextLine();
        int arr[] = new int[26];
        for(int i = 0;i < n;i++){
            arr[s.charAt(i) - 'a']++;
        }
        int k = arr['k' - 'a'];
        int ing = Math.min(Math.min(arr['i' - 'a'],arr['n' - 'a']),arr['g' - 'a']); // 最多能组成多少个ing
        long ans = 0;
        ans = 2 * Math.min(k,ing/2);
        k = k - Math.min(k,ing/2);
        if(k > 0&&ing %2 == 1){
            ans += 1;
        }
        System.out.println(ans);



    }
}

没有思路,记住这个毛毛的方法,一般是利用字符计数,找出最多能组成的ing数,然后对比k和ing/2(这里只要组成kinging),inging用完之后呢,就要剩下的k组成king。

全部评论

相关推荐

05-26 22:25
门头沟学院 Java
Java小肖:不会是想叫你过去把你打一顿吧,哈哈哈
点赞 评论 收藏
分享
鬼迹人途:你去投一投尚游游戏,服务器一面,第一个图算法,做完了给你一个策略题,你给出方案他就提出低概率问题,答不上当场给你挂
点赞 评论 收藏
分享
投递长鑫存储等公司7个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务