poj 3671 Dining Cows

poj 3671 Dining Cows,第1张

poj 3671 Dining Cows
#include <iostream>#include <cstdio> #include <memory.h> #include <climits> #include <algorithm> using namespace std; const int MAX = 30001; int num[MAX], tmp[MAX];int main(){    int i, n, ans, left, right, mid;    scanf("%d", &n);    for (i = 0; i < n; i++){        scanf("%d", &num[i]);     }     //最长递增子序列的求解     memset(tmp, 0, sizeof(tmp));     tmp[0] = -1;    ans = 0;    for (i = 0; i < n; i++){        if (num[i] >= tmp[ans]){ tmp[++ans] = num[i];         }         else {  left = 1, right = ans;  while (left <= right){        mid = (left + right) / 2;        if (num[i] >= tmp[mid]){ left = mid + 1;         }         else{  right = mid - 1;         }   }   tmp[left] = num[i];         }     }    cout << n-ans << endl;     return 0;}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4925936.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-12
下一篇2022-11-13

发表评论

登录后才能评论

评论列表(0条)

    保存