五十九.L1-033 出生年

在这里插入图片描述
在这里插入图片描述

#include<iostream>
#include<cstdio>
#include<set>
using namespace std;
int main()
{
    
    
    int year,n;
    scanf("%d%d",&year,&n);
    for(int i = year;i < 10000;i++)
    {
    
    
        set<int>s;
        int num = i;
        for(int j = 0; j < 4; j++)
        {
    
    
            s.insert(num % 10);
            num /= 10;
        }
        if(s.size() == n)
        {
    
    
            printf("%d %04d",i-year,i);
            break;
        }
    }
    return 0;
}

在这里插入图片描述
在这里插入图片描述
要用到set函数,将输入的年份每一位数都放进集合s中,因为集合不允许出现重复的数字,所以集合s的大小就是现在这个数字不重复数字的个数,通过这个条件判断是否符合题意。

猜你喜欢

转载自blog.csdn.net/JiangYu200015/article/details/108740009