Pagini recente » Cod sursa (job #759947) | Cod sursa (job #544802) | Cod sursa (job #763498) | Borderou de evaluare (job #1792110) | Cod sursa (job #415180)
Cod sursa(job #415180)
#include <stdio.h>
#define max(a,b) (a > b) ? a:b
void swap(int* a, int* b){
int temp = *a;
*a = *b;
*b = temp;
}
int main(int argc, char** argv){
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
int a1, a2, b1, b2, idi, ide, maxg, idi_crt, n, i;
idi_crt = idi = ide = 0;
scanf("%d", &n);
scanf("%d", &a1);
maxg = b1 = a1;
for(i = 1; i < n; i++){
scanf("%d", &a2);
b2 = max(a2, a2 + b1);
if(b2 == a2) idi_crt = i;
if(maxg < b2) {
maxg = b2;
ide = i;
idi = idi_crt;
}
swap(&b1, &b2);swap(&a1,&a2);
}
printf("%d %d %d\n", maxg, idi + 1, ide + 1);
return 0;
}