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. 테스트 결과