둘째 소프트웨어 공학

A. 질문 질문

주제 ### (1) : 최대 연속 서브 어레이 (최대 및 서브 - 세그먼트) ### ### BACKGROUND 문제 : 정수 N이 주어는 [1]로 이루어진 시퀀스 (음수 일 수 있음) [2 ] , A [3], ..., A [n은, A [I] + 등 발견 시퀀스 A [I + 1] + ... + A [J] 서브 세그먼트의 최대 값. 최대 {0, A [I : 양의 정수이며 0 ### 정의 주어진 서브 세그먼트 때문에, 필요한 최적의 값을 정의 할 경우 ] + A [I + 1] + ... + A [ J]} 1 <= I <= J <N = ### , 예를 들면, (A [1], A [ 2], A [3], A [4], A [5], A [6] ) = (- 2,11, -4,13, -5, -2), (20) 및 서브 - 세그먼트의 최대. ### -은 "바이두 백과 사전"이 개 쓰기 코드 #에서 인용 코드 . # 세 가지 프로그램 운영 결과 # 4 셀 테스트 ### 테스트 케이스 (-5,11, -4,13, -5, -2). 경로 ### 행한다 A (시작), B (온도가 [I = D (NULL) 온도 (TEMP> 0?) C (= 임시 온도 + A [I]) E (합계 = TEMP) 사용법 #include "PCH])를 .H "#INCLUDE"CppUnitTest.h "

         using namespace Microsoft::VisualStudio::CppUnitTestFramework;

        namespace UnitTest1
      {
       TEST_CLASS(UnitTest1)
     {
     public:
    
    TEST_METHOD(TestMethod1){
        int n = 6,i;
        int a[6] = { -5,11,-4,13,-5,-2 };
        int sum = 0, temp = 0;
        for ( i = 0; i < n; i++) {
            if (temp > 0) {
                temp =temp+ a[i];
            }
            else temp = a[i];
            if (temp > sum) {
                sum = temp;
            }    }
        int real = 20;
        Assert::AreEqual(sum, real);
    }
};

} # V. 테스트 결과

추천

출처www.cnblogs.com/bbw88/p/12663584.html