标题:新手上路·遇到问题请各位大神解答
只看楼主
朱一凡
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2022-10-25
结帖率:100%
已结贴  问题点数:20 回复次数:3 
新手上路·遇到问题请各位大神解答
题目描述
给定一个长度为 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​​。
搜索更多相关主题的帖子: 序列 新手上路 数据 一行 整数 
2022-10-25 20:51
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:10 
因为题目交代“|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 );
}
2022-10-26 09:21
朱一凡
Rank: 1
等 级:新手上路
帖 子:6
专家分:3
注 册:2022-10-25
得分:0 
回复 2楼 rjsp
谢谢大佬
2022-10-27 18:53
sssooosss
Rank: 9Rank: 9Rank: 9
等 级:禁止访问
威 望:3
帖 子:664
专家分:1115
注 册:2019-8-27
得分:10 
共同学习
2022-10-28 20:01



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-510439-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.066824 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved