1 条题解

  • 0
    @ 2025-8-24 21:27:55

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar 神阈小杰
    (^ v ^)------>Σ(っ°Д°;)っ(已退役)

    搬运于2025-08-24 21:27:54,当前版本为作者最后更新于2019-09-18 11:43:56,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    本题可以用贪心来做(本人动规不咋地QAQ)

    思路:

    首先按顺序用map来记录当前每个韵脚出现次数

    题目中要求四行诗满足“AABB”、“ABAB”、“ABBA”和“AAAA”中的一种,即有一种韵脚出现四次或两种韵脚各出现两次

    故若前出现次数超过两次的韵脚数有两个或有一个韵脚出现次数出现次数为四次,答案就加一且清空记录的数

    代码如下:

    # include <map>
    # include <cstdio>
    using namespace std;
    int n,x;
    map <int,int> f;
    int s;
    int ans;
    int main()
    {
    	scanf("%d",&n);
    	for(int i=1;i<=n;i++)
    	{
    		scanf("%d",&x);
    		f[x]++;
    		if(f[x]==2) s++;
    		if(s==2)
    		{
    			ans++;
    			s=0;
    			f.clear();
    		}
    		if(f[x]==4)
    		{
    			ans++;
    			s=0;
    			f.clear();
    		}
    	}
    	printf("%d",ans);
    	return 0;
    }
    
    • 1

    信息

    ID
    674
    时间
    1000ms
    内存
    125MiB
    难度
    3
    标签
    递交数
    0
    已通过
    0
    上传者