hdu 5059

/*
 * @brief hdu 5059
 * @file 5059.c
 * @author xiyan
 * @CreatedTime 2014/11/12
 * @LastChanged 2014/11/12
 * @note
 *      type: string convert
 *
 *
 */

#include <stdio.h>
#include <string.h>

#define MAXN 110

char s[MAXN], t[MAXN];
int a, b, c;

int solve()
{
     if(1 != sscanf(s, "%d", &c)) return -1;

     sprintf(t, "%d", c);

     if(0 != strcmp(s, t))   return -1;

     return ( (c >= a && c <=b )? 0 : -1);
}

int main()
{
#ifdef DEBUG
    freopen("./in", "r", stdin);
    freopen("./out","w", stdout);
#endif
    
    while(gets(s)){
        scanf("%d%d", &a, &b);
        getchar();
        printf("%s\n", solve() ? "NO" : "YES");
    }
    return 0;
}
时间: 2024-10-08 06:20:28

hdu 5059的相关文章

HDU 5059 Help him(细节)

HDU 5059 Help him 题目链接 直接用字符串去比较即可,先判断原数字正确不正确,然后写一个判断函数,注意细节,然后注意判掉空串情况 代码: #include <cstdio> #include <cstring> const int N = 105; char n[N], a[N], b[N]; bool judge(char *str) { int len = strlen(str); if (len == 0) return false; int s = 0; i

BestCoder12 1002.Help him(hdu 5059) 解题报告

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5059 题目意思:就是输入一行不多于 100 的字符串(除了'\n' 和 '\r' 的任意字符),问是否是合法的整数,如果是的话问是否在[a, b] 范围内,是则输出 YES,否则输出 NO 合法的整数:(1)非负整数:只有数字,没有前导0 (2)负数:负号后面只能跟着数字,负号前没有任何字符 首先这条题感觉不是出得太好,不过都是硬着头皮学人家做啦.反正一些很变态的数据可能还是过不了,但却AC的. 模

HDU 5059 Help him(简单模拟题)

http://acm.hdu.edu.cn/showproblem.php?pid=5059 题目大意: 给定一个字符串,如果这个字符串是一个整数,并且这个整数在[a,b]的范围之内(包括a,b),那就输出YES,其它的都是NO. 这个字符串是整数的条件: 1.如果它是正整数,它只包含前导不是0的数(这个数前面没有零). 2.如果它是负整数,只包含一个'-'符号,任然没有前导0. 3.除此之外都不是非法的 解题思路: http://bestcoder.hdu.edu.cn/ 这里有 要注意: 0

HDU 5059 Help him (模拟)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5059 Problem Description As you know, when you want to hack someone's program, you must submit your test data. However sometimes you will submit invalid data, so we need a data checker to check your data

hdu 5059 Help him

Help him Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 480    Accepted Submission(s): 119 Problem Description As you know, when you want to hack someone's program, you must submit your test d

hdu 5059(模拟)

Help him Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2500    Accepted Submission(s): 518 Problem Description As you know, when you want to hack someone's program, you must submit your test d

Help him http://acm.hdu.edu.cn/showproblem.php?pid=5059

题目是昨天晚上的BC.昨天晚上一直卡在第二题,囧. 今天看到题解之后,觉得自己想的也是差不多的,该考虑的也考虑到的.究竟是为什么会错.然后我就改了交,改了交.终于让我改对了一次,我找到了自己的代码中哪段有问题. 接下来上代码: wa code: int but=0; if(!sig) but=1; else but=0; long long c=0,r=1; for(int i=strlen(str)-1; i>=but; i--) { //not digit if(str[i]<'0'||s

hdu 2108 Shape of HDU (数学)

Shape of HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 5059    Accepted Submission(s): 2294 Problem Description 话说上回讲到海东集团推选老总的事情,最终的结果是XHD以微弱优势当选,从此以后,"徐队"的称呼逐渐被"徐总"所取代,海东集

[kmp+dp] hdu 4628 Pieces

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4622 Reincarnation Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) Total Submission(s): 2096    Accepted Submission(s): 715 Problem Description Now you are back,and