看个人思路吧,清晰的话就简单 CodeForces 271A - Beautiful Year

It seems like the year of 2013 came only yesterday. Do you know a curious fact? The year of 2013 is the first year after the old 1987 with only distinct digits.

Now you are suggested to solve the following problem: given a year number, find the minimum year number which is strictly larger than the given one and has only distinct digits.

Input

The single line contains integer y (1000?≤?y?≤?9000) —
the year number.

Output

Print a single integer — the minimum year number that is strictly larger than y and all it‘s digits are distinct. It is guaranteed that the
answer exists.

Sample test(s)

input

1987

output

2013

input

2013

output

2014

题意就是说给你一个年份,当然是四位数的,然后要你找出比这个数大且是最先打到四位数每个数字都不一样,可能有些同志英语不好看不懂然后小弟语文差表述也有问题,这样说吧:2013是给定的数字,比2013大且最先达到每个数字都不一样就是2014   2    0    1    4;现在应该能明白了吧?

那咱们现在就来讲讲思路:

定义一个year作为输入,然后就是while(1)的一个循环,再定义一个flag作为标记,初值为0;

然后就是取各个数位上的数字分别赋值给a,b,c,d,然后就是一个if比较,如果不一样则flag=1;

然后判断flag是否为一,为一代表已找到符合条件的数字,则break;

这里有一点注意的是:输入year之后一定要加一,不然像2013这样的是会输出2013滴!!!!!!切记,好啦,讲完!!!!!!

贴下代码:

#include<stdio.h>
#include<string.h>
#include<iostream>
using namespace std;
int main()
{
    int i,j,k;
    int t,n,m;
    int a,b,c,d;
    int year,flag;
    while(scanf("%d",&year)!=EOF)
    {
        flag=0;
        //printf("%d %d %d %d\n",a,b,c,d);
        while(1)
        {
            year++;    //千万注意这里!!!!!!千万千万千千万!!!!!!
            d=year%10;
            c=(year/10)%10;
            b=(year/100)%10;
            a=(year/1000);
            if(a!=b&&a!=c&&a!=d&&b!=c&&b!=d&&c!=d)
            {
                flag=1;
            }
            if(flag==1)
                break;

        }
        printf("%d\n",year);
    }
    return 0;
}

如有发现bug,就指出来吧!!!!!!不胜感激!!!!!!

看个人思路吧,清晰的话就简单 CodeForces 271A - Beautiful Year

时间: 2024-07-30 13:35:29

看个人思路吧,清晰的话就简单 CodeForces 271A - Beautiful Year的相关文章

2.5星|王煜全《学会洞察行业》:没看到独特的分析方法,思路不够清晰,缺乏洞察

学会洞察行业:写好分析报告的6堂实战课 看书名与全书的结构,作者尝试给出一套行业分析的方法.读后感觉就是投资圈常用的行业调查分析的一些检查清单.作者对这些清单的整理归类我认为思路不够清晰. 总体来说,全书讲行业调查方法论是比较失败的.作者也没给出具体的完整的行业调查分析的案例. 书中作者举了一些他们公司投资相关的美国科技创业公司的例子,还有点意思. 总体评价2.5星,价值不大. 以下是书中几张插图: 以下是书中一些内容的摘抄: 1:那么,如何判断一个产业是否已经成熟,或者产业机会是否来临呢?主要

《灰犀牛》:思路不够清晰,行文啰嗦,作者所谓的“灰犀牛”跟“公地悲剧”有很大重合,提出的应对方案妖要么是老生常谈要么可操作性比较差。2星。

作者尝试发明一个跟黑天鹅类似的概念来描述个人或集体视而不见的危机.我的感觉是作者的洞察力不够,思路不够清晰,行文比较啰嗦,各个章节的内容有很多重复,说服力不强. 具体来说,作者提到的灰犀牛基本是这两类:1:集体或个人知道危机但是没有采取行动去解决,如公地悲剧,或民主制度下决策者需要重视短期行为没法顾及长远效应,或者人明知吸烟不好但是不愿意控制:2:机制不合理或失灵导致预警信号根本就没传达给决策者. 作者大部分的案例都集中在第1类中,其中的公地悲剧早有成熟的理论来解释,民主制度下决策者重视短期利益

看懂php单例模式-清晰简洁的回答

1: 其实单例模式,说白了就是说一个类只能实例化一次.但是我们如何在这个实例化一次上面做文章呢.其实有个突破口就是__construct()这个魔术方法.这个方法就代表着如果类实例化的时候,就会自动执行这个方法.然后如果我把这个方法变成保护或者私有的,会是什么效果呢. <?php class test{ protected function __construct(){ } } $test = new test(); ?> 然后执行以下,就会出现这个情况. 这样的话,就不能实例化了.这样就保证

感觉思路很清晰但运算起来就是不行帮忙来指教!

eiq2qi秘蕉接咽椎平<http://weibo.com/jDxMPp/230927983039017270382592> w044ka匾俨临剂柿笨<http://weibo.com/QKzCgIyp/230927983023625126809600> i20wcg嚎前氏先屎吩<http://weibo.com/tJryap/230927983097581951262720> 8eq4qg峙睾俑啡瓢旧<http://weibo.com/HKBDQp/230927

新手也能看懂,消息队列其实很简单

消息队列其实很简单 “RabbitMQ?”“Kafka?”“RocketMQ?”...在日常学习与开发过程中,我们常常听到消息队列这个关键词.我也在我的多篇文章中提到了这个概念.可能你是熟练使用消息队列的老手,又或者你是不懂消息队列的新手,不论你了不了解消息队列,本文都将带你搞懂消息队列的一些基本理论.如果你是老手,你可能从本文学到你之前不曾注意的一些关于消息队列的重要概念,如果你是新手,相信本文将是你打开消息队列大门的一板砖. 一 什么是消息队列 我们可以把消息队列比作是一个存放消息的容器,当

思路不够清晰

对于编程,最主要的,首先是逻辑,其次才是代码,自己急功近利的毛病,在代码上造成了很大的失利, 首先,我没有对需求进行分析,只知道要做什么功能,在没有分析的情况下就去做,因为觉得之前有这个功能的代码,便形成了固定思维 其次,对原来的代码认识不够,很多东西,自己根本就不熟悉,造成了调用时的尴尬 再者,自己的惰性使然,因为有现成的,故而不想再动脑袋去整,殊不知,这样做,造成了牛马不相及 最后,自己的基础还有待加强

JavaScript : 零基础打造自己的jquery类库

写作不易,转载请注明出处,谢谢. 文章类别:Javascript基础(面向初学者) 前言 在之前的章节中,我们已经不依赖jQuery,单纯地用JavaScript封装了很多方法,这个时候,你一定会想,这些经常使用的方法能不能单独整理成一个js文件呢? 当然可以,封装本来就是干这个用的.放在一个单独js文件里固然不错,其实我们也可以单独整一个js类库,一方面可以锻炼一下自己封装方法的能力,另一方面,也可以将自己学到的东西做一个整理. 出于这个目的,本文将介绍如何封装一个简单的js类库.(当然,只是

Deferred跟promise跟js同步问题记录

之前的时候,碰到过几次同事问我,说js的同步怎么处理,就是我想先执行这段代码(耗时相对较长的一行,多数是异步的一些api调用),执行完了之后我再执行下边这句,每次我都很无奈的说不晓得,如果是ajax的话我知道async可以搞定,当然这并没有什么乱用.近段时间在做一个自动化测试的项目,前后端分离的.旁边的同事要做前端websql的增删改查,一直在说jquery的deferred如何如何,我也不懂,就感觉听上去高大上的一个东西,内心忐忑之余就找两篇文章读了一下,然后就有了此文. ----------

第 12 章 命令模式【Command Pattern】

以下内容出自:<<24种设计模式介绍与6大设计原则>> 今天讲命令模式,这个模式从名字上看就很简单,命令嘛,老大发命令,小兵执行就是了,确实是这个意思,但是更深化了,用模式来描述真是是世界的命令情况.正在看这本书的你,我猜测分为两类:已经工作的和没有工作的,先说没有工作的,那你为啥要看这本书,为了以后工作呗,只要你参见工作,你肯定会待在项目组,那今天我们就以项目组为例子来讲述命令模式. 我是我们部门的项目经理,就是一个项目的头,在中国做项目,项目经理就是什么都要懂,什么都要管,做好