Advertisement
juanjo12x

Lab2_Algoritmia_P1_Coin_Row

Apr 11th, 2014
25
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.90 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define MAX(x,y) ( ((x)>(y))? (x):(y))
  5. #define MAXSIZE 100
  6. int main(int argc, char** argv) {
  7.     int F[MAXSIZE+1],C[MAXSIZE+1];
  8.     int m,k,dato,i;
  9.     printf("Ingrese la cantidad de monedas (maximo 100): ");
  10.     scanf("%d",&m);
  11.     printf("Ingrese las %d monedas : ",m);
  12.     for (k=1;k<=m;k++){
  13.         scanf("%d",&dato);
  14.         C[k]=dato;
  15.     }
  16.     F[0]=0;int monedas[m];
  17.     F[1]=C[1];
  18.     for (k=2;k<=m;k++) {
  19.         F[k]=MAX(C[k]+F[k-2],F[k-1]);
  20.                
  21.     }
  22.     k=m;int s=0;
  23.     while(k>1){
  24.         if( F[k]==C[k]+F[k-2]){
  25.             monedas[s]=C[k];
  26.             k--;
  27.         }else monedas[s]=C[k-1];
  28.         s++;
  29.         k--;
  30.        
  31.     }
  32.     printf("La maxima suma es: %d \n",F[m]);
  33.     printf("Las monedas usadas son: ");
  34.     for (i=0;i<s;i++){
  35.         printf("%d ",monedas[i]);
  36.     }
  37.    
  38.     return (EXIT_SUCCESS);
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement