HDOJ2549 ( 壮志难酬 )

开始没有判断len就一直wa,看了苏哥(lzsz1212)的代码,发现多了一个len判断,添上之后就ac了,但是不明白为啥。

后来网上找到的一句话:又是一道坑爹的题啊,可能给的n大于小数点后的数,就得输出0

Problem : 2549 ( 壮志难酬 )     Judge Status : Accepted
RunId : 5923626    Language : C    Author : qq1203456195
Code Render Status : Rendered By HDOJ C Code Render Version 0.01 Beta

#include <stdio.h>
#include <string.h>
int main()
{
    int a,n,cas,i,len;
    char ans[1000];
    scanf("%d",&cas);
    while (cas--)
    {
        scanf("%d.%s %d",&a,ans,&n);
        len=strlen(ans);
        if(n<=len)
            printf("%c\n",ans[n-1]);
        else
            printf("0\n");
    }
    return 0;
}

 //下边这种解法,符合题目意思,不知道为啥不能AC

#include <stdio.h>
int e[7]={0,10,100,1000,10000,100000,1000000};
int main()
{
    int cas,n;
    double l;
    scanf("%d",&cas);
    while (cas--)
    {
        scanf("%lf%d",&l,&n);
        printf("%d\n",(int)(l*e[n])%10);
    }
    return 0;
}
字节跳动内推

找我内推: 字节跳动各种岗位
作者: ZH奶酪(张贺)
邮箱: cheesezh@qq.com
出处: http://www.cnblogs.com/CheeseZH/
* 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/CheeseZH/p/2494822.html