zoukankan      html  css  js  c++  java
  • HDU 1003 maxsum

    #include<iostream>
    #include<vector>
    using namespace std;
    
    typedef struct {
        int maxsum;
        int first;
        int end;
    }resultArryType;
    
    
    void OutResult(vector<int> vec, int num)
    {
        resultArryType resultArry;
        int max = 0;
        int numCount = 0;
        int maxsum = 0, sumtemp = 0;
        resultArry.maxsum = -1001;
        resultArry.end = 0;
        resultArry.first = 0;
        numCount = vec.size();
        for (int i = 0; i < numCount; i++){
            sumtemp = 0;
            for (int j = i; j < numCount; j++){
                sumtemp += vec[j];
    
                if (sumtemp > resultArry.maxsum){
                    resultArry.maxsum = sumtemp;
                    resultArry.first = i + 1;;
                    resultArry.end = j + 1;
                }
    
                if (resultArry.maxsum >sumtemp && sumtemp < 0)
                    break;
            }
        }
        cout << "Case " << num << ":" << endl;
        cout << resultArry.maxsum << " " << resultArry.first << " " << resultArry.end << endl;
    }
    
    
    int main()
    {
        int num, temp;
        int first;
        vector<int> vec;
    
        cin >> num;
        for (int i = 0; i < num; i++){
            first = 0;
            cin >> first;
            vec.clear();
            for (int j = 0; j < first; j++){
                cin >> temp;
                vec.push_back(temp);
            }
            OutResult(vec, i+1);
            if (i < num - 1)
                cout << endl;
        }
    }
    

      

  • 相关阅读:
    for语句及switch case用法示例
    ●验证控件
    ●LinQ to SQL
    ●操作Word
    141107●VS2012的一些使用技巧
    ●Winform拖动无边框窗口、播放音频、启动外部exe程序
    ●操作文件目录及文件
    ●流
    ●事务及异常处理
    ●Winform对话框
  • 原文地址:https://www.cnblogs.com/mrethan/p/4604735.html
Copyright © 2011-2022 走看看