注册 登录
编程论坛 C语言论坛

新手上路·遇到问题请各位大神解答

朱一凡 发布于 2022-10-25 20:51, 999 次点击
题目描述
给定一个长度为 n​​ 的 整数 序列 {an}​​,请你求出该序列中第一个比 x​ 大的数。

输入格式
第一行两个整数 n,x​。

第二行有 n 个整数,表示序列 {an}。

输出格式
一行一个整数,如题目描述。

样例数据
样例输入
5 4
1 8 3 6 -5
样例输出
8
数据范围
对于 100%​​​​ 的数据,有 1≤n≤105​​​​,|ai|,|x|≤109​​​,保证必定有一个 i​​ 使得 ai>x​​。
3 回复
#2
rjsp2022-10-26 09:21
因为题目交代“|ai|,|x|≤10⁹”,所以先掏出计算器计算出 9/log10(2) = 29.89。第一个结论有了:我们需要一个至少31bits的具符号类型。既然你是新手,那 int_fast32_t 就算了,用 long 吧,其实如今 int 也可以。

程序代码:
#include <stdio.h>

int main( void )
{
    long n, x;
    scanf( "%ld%ld", &n, &x );

    long u;
    for( ; scanf("%ld",&u), u<=x; );

    printf( "%ld", u );
}
#3
朱一凡2022-10-27 18:53
回复 2楼 rjsp
谢谢大佬
#4
sssooosss2022-10-28 20:01
共同学习
1