매일 한 문제 [1] - 배열 의 하위 배열 의 합 의 최대 치 를 구하 세 요.
1149 단어 데이터 구조 & 알고리즘 디자인프로 그래 밍알고리즘ini
예 를 들 어 입력 한 배열 은 1, - 2, 3, 10, - 4, 7, 2, - 5 이 고 가장 큰 하위 배열 은 3, 10, - 4, 7, 2 이기 때문에 이 하위 배열 의 것 과 18 로 출력 된다.
이 문 제 는 프로 그래 밍 100 문제 와 프로 그래 밍 의 아름다움 에 상응하는 해답 이 있 으 며, 아래 에 자신의 전체 코드 를 붙인다
#include
using namespace std;
int MaxSum(int a[],int n){
int max=a[0];
int tmpMax=a[0];
for(int i=1;imax)
max=tmpMax;
}
return max;
}
int main(){
int a[8]={1,-2,3,10,-4,7,2,-5};
int sumMaxSubArray=MaxSum(a,8);
cout<
이것 은 프로 그래 밍 의 아름다움 알고리즘 의 완전한 실현 이다
#include
using namespace std;
int MaxSum(int a[],int n){
int nStart=a[n-1];
int nAll=a[n-1];
for(int i=n-2;i>=0;i--){
if(nStart<0)
nStart=0;
nStart+=a[i];
if(nStart>nAll)
nAll=nStart;
}
return nAll;
}
int main(){
int a[8]={1,-2,3,10,-4,7,2,-5};
int sumMaxSubArray=MaxSum(a,8);
cout<
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Linux 에서 자주 사용 하 는 Shell 백업 스 크 립 트 세 가지말 이 있 으 면, 번 거 롭 게 하지 않 으 면, 생활 할 필요 가 없다.백업 을 하지 않 으 면 극악무도 하 다.리 눅 스 시스템 관리자 에 게 백업 은 정기 적 으로 해 야 할 중요 한 일이 다.비록 업무 성격...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.