| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 297 人关注过本帖
标题:TLE TLE 大佬们有什么办法提高效率吗(c而非c++
只看楼主 加入收藏
bug芒果核
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2025-9-12
结帖率:100%
收藏
已结贴  问题点数:30 回复次数:3 
TLE TLE 大佬们有什么办法提高效率吗(c而非c++
#include<stdio.h>
int main(){
    int h,p,q,n,a;
    while(scanf("%d%d%d%d",&h,&p,&q,&n)!=EOF){
    int b=h,a[300005]={},x=0;
    for(int i=0;i<n;i++){
        scanf("%d",&a[i]);
        b+=a[i];
        if(b>=q){
        printf("up\n");
        x=1;
        break;}
        else if(b<=p){
        printf("down\n");
        x=1;
        break;}
    }
    if(!x){
    if(!(b-h)) printf("No\n");
    else if((b-h)>0) printf("up\n");
    else printf("down\n");  
    }
}
return 0;
}


水库预测-version1
时间限制:1000ms   内存限制:65536kb

题目描述
在一次旅行中,小p来到一个水库。这个水库当前水位为 h,并且有两个警戒线,分别为最低水位警戒线 p与最高水位警戒线 q。当水库的水线低于(含达到)水位警戒线 p时,将触发低水位预警;超过(含达到)最高水位警戒线 q时,将触发高水位预警。在小 P于此处停留的一天中共观察水库 n次,并将每次水库水线相于上次观察的变化值 ai记录下来。小 P想知道,假设水库每天的水线都会如此变化,那么从小 P观察的那一天开始(含这一天),哪种预警将在这个水库中最早出现?
注:水位线可以为负值,小 P观察的那一天记为第 0 天。
输入
本题为不定组输入,对于每一组输入:第一行输入三个整数,分别为 h,p,q,保证 0<p<h<q≤2×109。
第二行输入一个整数,为 n,保证0<n≤3×105。
第三行输入 n个整数,分别为 a1,a2,...,an,保证 −2×109≤ai≤2×109。
保证所有组输入中 n 之和不超过 3×105。
输出
对于每一组输入,共输出一行字符串。如果预警为超过最高(含达到)水位警戒线,则输出up;如果预警为低于(含达到)最低水位警戒线,则输出down;如果始终没有出现预警,则输出 No。
输入样例
5 2 10
2
3 -1
5 2 10
2
3 -3
5 2 10
2
-3 4
输出样例
up
No
down

搜索更多相关主题的帖子: down int printf 输入 输出 
7 天前 21:19
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9069
专家分:54431
注 册:2011-1-18
收藏
得分:30 
int a[300005]; 有什么用?即,为什么要保存它们?
另外,break 也不对吧,后面的数据即使没用了也要读完,否则下一组就乱套了。
6 天前 13:05
bug芒果核
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2025-9-12
收藏
得分:0 
回复 楼主 bug芒果核

辛苦
6 天前 19:59
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9069
专家分:54431
注 册:2011-1-18
收藏
得分:0 
差不多(未必正确)是:
程序代码:
#include <stdio.h>

int main( void )
{
    for( int h,p,q,n; scanf("%d%d%d%d",&h,&p,&q,&n)==4; )
    {
        int c = h;
        for( int i=0; i!=n && c>p && c<q; ++i )
        {
            int a;
            scanf( "%d", &a );
            c += a;
        }
        scanf( "%*[^\n]" );

        if( c > h )
            puts( "up" );
        else if( c < h )
            puts( "down" );
        else
            puts( "No" );
    }
}

5 天前 08:33
快速回复:TLE TLE 大佬们有什么办法提高效率吗(c而非c++
数据加载中...
 
   



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

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016531 second(s), 10 queries.
Copyright©2004-2025, BC-CN.NET, All Rights Reserved