1. 程式人生 > 實用技巧 >javascript zip.js 壓縮檔案操作

javascript zip.js 壓縮檔案操作

#include<cstdio>
#include<algorithm>
#include<cstring>
#define MAXN 520
using namespace std;
int n;
int f[MAXN][MAXN],c[MAXN];
bool judge(int a,int b);
int main()
{
    memset(f,0x3f3f3f,sizeof(f));
    scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&c[i]);
        f[i][i]
=1; } for(int len=1;len<=n;len++) { for(int i=1;i+len<=n;i++) { int j=i+len; if(judge(i,j)) { printf("%d %d:HUIWEN\n",i,j); f[i][j]=1; } else { for
(int k=i;k<j;k++) { f[i][j]=min(f[i][k]+f[k+1][j],f[i][j]); printf("LEFT=%d|RIGHT=%d;k=%d____f[%d][%d]=%d\n",i,j,k,i,j,f[i][j]); } } } } printf("%d",f[1][n]); return 0; } bool judge(int a,int b) {
if((b-a)==1) { if(c[a]==c[b]) return true; else return false; } int t=0; if((b-a)&1==0) { int temp=0; for(int i=a;i<=a+(b-a)/2;i++) { t=b-temp; temp++; if(c[i]!=c[t]) return false; } } else { int temp=0; for(int i=a;i<=a+(b-a+1)/2;i++) { t=b-temp; temp++; if(c[i]!=c[t]) return false; } } return true; }