judge할 수 있는 사이트가 없으므로(자체 제작된 문제입니다) 알아서 잘 풀고, 확인해보시기 바랍니다.
좋지않은 코드 예시(심지어 틀릴 수도 있습니다):
#include <stdio.h>
int bigsum=0;
int mario(int arr[],int n,int k,int sum);
int main()
{
int i,j,n,k=0,sum=0;
int arr[100];
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&arr[i]);
bigsum+=arr[i];
}
mario(arr,n,k,sum);
printf("%d",bigsum);
return 0;
}
int mario(int arr[],int n,int k,int sum)
{
if(k==n-1){
if(sum+arr[k]>bigsum){
bigsum=sum+arr[k];
}
return 0;
}else if(k==n-2){
mario(arr, n, k+1,sum+arr[k]);
return 0;
}
mario(arr, n, k+1,sum+arr[k]);
mario(arr, n, k+2,sum+arr[k]);
return 0;
}