• [NOIP2001] 普及组


    装箱问题

    裸01背包,速刷过

     1 #include<cstdio>
     2 #include<iostream>
     3 #include<cmath>
     4 using namespace std;
     5 int sp[50000]={0};
     6 int f[50000]={0};
     7 int main(){
     8     int v,n;
     9     cin>>v>>n;
    10     int i,j;
    11     for(i=1;i<=n;i++){
    12         scanf("%d",&sp[i]);
    13     }
    14     for(i=1;i<=n;i++)
    15      for(j=v;j>=sp[i];j--){
    16          f[j]=max(f[j],f[j-sp[i]]+sp[i]);
    17      }
    18     cout<<v-f[v];
    19     return 0;
    20 } 
    装箱问题

    求先序排列

    中序排列串中的任意位置都可能是根。

    后序排列串的最后一位一定是树的总根。

    根据这两个性质,就可以寻找根节点,并递归处理左右子树了。

     1 /*by SilverN*/
     2 #include<algorithm>
     3 #include<iostream>
     4 #include<cstring>
     5 #include<cstdio>
     6 #include<cmath>
     7 using namespace std;
     8 char s[10],c[10];
     9 void solve(int l,int la,int r,int ra){
    10     if(l>la || r>ra)return;
    11     printf("%c",c[ra]);
    12     for(int i=l;i<=la;i++){
    13         if(s[i]==c[ra]){
    14             solve(l,i-1,r,r+i-l-1);
    15             solve(i+1,la,r+i-l,ra-1);
    16             break;
    17         }
    18     }
    19     return;
    20 }
    21 int main(){
    22     scanf("%s",s+1);
    23     scanf("%s",c+1);
    24     int i,j;
    25     int len=strlen(s+1);
    26     solve(1,len,1,len);
    27     return 0;
    28 }
    求先序排列

    数的计算

    记忆化DFS

    其实DP也可以

     1 #include<algorithm>
     2 #include<iostream>
     3 #include<cstring>
     4 #include<cstdio>
     5 #include<cmath>
     6 using namespace std;
     7 const int mxn=1200;
     8 int h[mxn];
     9 int n;
    10 int dfs(int x){
    11     if(h[x])return h[x];
    12     int i,j;
    13     int res=0;
    14     for(i=1;i<=x/2;i++){
    15         res++;
    16         res+=dfs(i);
    17     }
    18     if(!h[x])h[x]=res;
    19     return res;
    20 }
    21 int main(){
    22     scanf("%d",&n);
    23     cout<<dfs(n)+1<<endl;
    24     return 0;
    25 }
    数的计算
  • 相关阅读:
    Extjs combobox设置默认值
    sql 游标循环遍历
    .NET中的DES对称加密
    Asp.Net生命周期
    浅谈C#随机数发生器
    面向对象-多态 附抽象
    c#常用的一些命名空间
    c#面向对象编程基础
    string应用
    [自习任我行]第二阶段任务跟踪10
  • 原文地址:https://www.cnblogs.com/SilverNebula/p/5962545.html
Copyright © 2020-2023  润新知