标题:一道ACM的题求解
只看楼主
fanpengpeng
Rank: 8Rank: 8
来 自:南极洲
等 级:蝙蝠侠
威 望:7
帖 子:299
专家分:849
注 册:2013-2-1
得分:0 
回复 9楼 红糖水
利用输入输出缓冲区的特性,可以简单的实现,不过界面不是很好,只能规规矩矩的按行输入,数据断行后显示会乱
程序代码:
#include <iostream>

using  namespace std;

int main()
{
    int T, M, N, cnt, num;
   
    if(!(cin >> T) || T < 0) return 0;
   
    while(T--){
        if(!((cin >> M) && M > 0 && M < 1e7)) return 0;
       
        num = 0, cnt = 0;
        while(M--){
            if(!(cin >> N)) return 0;
           
            if(N == num) cnt++;
            else{
                if(cnt > 0){
                    cout << cnt << " " << num << " ";   
                }   
                num = N;
                cnt = 1;
            }
        }
        cout << cnt << " " << num << endl;   
    }
   
    return 0;
}


人生是一场错过 愿你别蹉跎
2013-02-05 10:02
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
得分:0 
看11楼的,用C++似乎很容易啊,不知能否通过ACM的评测呢????
2013-02-05 10:44
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
得分:0 
经测试,超时了。。。。。。。。。。。。
2013-02-05 10:46
fanpengpeng
Rank: 8Rank: 8
来 自:南极洲
等 级:蝙蝠侠
威 望:7
帖 子:299
专家分:849
注 册:2013-2-1
得分:0 
回复 13楼 心灯甚亮
怎么测啊,输入时间算不算啊?

人生是一场错过 愿你别蹉跎
2013-02-05 11:24
fanpengpeng
Rank: 8Rank: 8
来 自:南极洲
等 级:蝙蝠侠
威 望:7
帖 子:299
专家分:849
注 册:2013-2-1
得分:0 
嗯,上面的代码是因为用了cin/cout超时了,改成scanf/printf就通过了
程序代码:
#include <stdio.h>

int main()
{
    int T, M, N, cnt, num;
  
    if(!scanf("%d", &T) || T < 0) return 0;
  
    while(T--){
        if(!(scanf("%d", &M) && M > 0 && M < 1e7)) return 0;
      
        num = 0, cnt = 0;
        while(M--){
            if(!scanf("%d", &N)) return 0;
          
            if(N == num) cnt++;
            else{
                if(cnt > 0){
                    printf("%d %d ", cnt, num);  
                }  
                num = N;
                cnt = 1;
            }
        }
        printf("%d %d\n", cnt, num);  
    }
  
    return 0;
}



人生是一场错过 愿你别蹉跎
2013-02-06 10:51
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
得分:0 
我的代码还没过去,system error......
2013-02-06 11:00



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




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

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