码迷,mamicode.com
首页 > 其他好文 > 详细

UVa 11059 Maximum Product(简单枚举7.1)使用longlong,输出格式%lld

时间:2016-08-21 18:17:01      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

这题数据最大18位,应该用Long long 粗心在几个地方(函数返回值,中间比较值max pro)用了Int,提交了好几次

#include<stdio.h>

long long func(int *a,int head,int rear){//一开始用了int 
    long long pro=a[head];//注意这里初值不能赋值为1 2\n 0 0这个通不过 
    if(head==rear)
    return a[head];
    else 
    for(int i=head+1;i<=rear;i++)
    pro*=a[i];
    return pro;
}

int main(){
    //freopen("test.out","w",stdout);
    int n,count=1;
    long long pro;//一开始用int 细心啊 
    while(scanf("%d",&n)!=EOF){
        int a[n];
        long long max=0;
        for(int i=0;i<n;i++){
            scanf("%d",a+i);
        }
        for(int head=0;head<n;head++){
            for(int rear=head;rear<n;rear++){//bug?
            pro=func(a,head,rear);
            if(max<pro){
            max=pro;
            //printf("%d %d %d\n",head,rear,max);    
            }
            }
        }
        
        if(max<0)
        max=0;
        printf("Case #%d: The maximum product is %lld.\n\n",count++,max);
    } 
    return 0;
} 

 

UVa 11059 Maximum Product(简单枚举7.1)使用longlong,输出格式%lld

标签:

原文地址:http://www.cnblogs.com/lsj2020/p/5793131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!