1160 动态规划简单题2
本质和最长有序子序列一样
 #include <stdio.h>
#include <stdio.h> #include <stdlib.h>
#include <stdlib.h>
 typedef struct _mouse {
typedef struct _mouse { int size;
    int size; int speed;
    int speed; int id;
    int id; }Mouse;
}Mouse;
 Mouse res[1100];
Mouse res[1100]; int f[1100];
int f[1100]; int p[1100];
int p[1100];
 int cmp(const void* a, const void* b)
int cmp(const void* a, const void* b) {
{ Mouse* pa = (Mouse*)a;
    Mouse* pa = (Mouse*)a; Mouse* pb = (Mouse*)b;
    Mouse* pb = (Mouse*)b; return (pa->size) - (pb->size);
    return (pa->size) - (pb->size); }
}
 int main()
int main() {
{ int cnt = 1;
    int cnt = 1; int siz, spd;
    int siz, spd; int i, j, k;
    int i, j, k; int max;
    int max;
 while (scanf("%d %d", &siz, &spd) != EOF) {
    while (scanf("%d %d", &siz, &spd) != EOF) { res[cnt].size = siz;
        res[cnt].size = siz; res[cnt].speed = spd;
        res[cnt].speed = spd; res[cnt].id = cnt;
        res[cnt].id = cnt; ++cnt;
        ++cnt; }
    } --cnt;
    --cnt; qsort(res+1, cnt, sizeof(Mouse), cmp);
    qsort(res+1, cnt, sizeof(Mouse), cmp);
 f[cnt] = 1;
    f[cnt] = 1; p[cnt] = 0;
    p[cnt] = 0; max = cnt;
    max = cnt; for (i = cnt-1; i > 0; --i) {
    for (i = cnt-1; i > 0; --i) { f[i] = 1;
        f[i] = 1; p[i] = 0;
        p[i] = 0; for (j = i+1; j <= cnt; ++j) {
        for (j = i+1; j <= cnt; ++j) { if (res[j].speed < res[i].speed) {
            if (res[j].speed < res[i].speed) { if ((f[j]+1) > f[i]) {
                if ((f[j]+1) > f[i]) { f[i] = f[j] + 1;
                    f[i] = f[j] + 1; p[i] = j;
                    p[i] = j; if (f[i] > f[max]) max = i;
                    if (f[i] > f[max]) max = i; }
                } }
            } }
        } }
    } printf("%d\n", f[max]);
    printf("%d\n", f[max]); for (i = 0, k = max; i < f[max]; ++i) {
    for (i = 0, k = max; i < f[max]; ++i) { printf("%d\n", res[k].id);
        printf("%d\n", res[k].id); k = p[k];
        k = p[k]; }
    } system("pause");
    system("pause"); return 0;
    return 0; }
}
 
                    
                     
                    
                 
                    
                 
 typedef
typedef 
 
     
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号