NOIp2018心得
阅读原文时间:2023年07月09日阅读:1
  • NOIp2018
  • 身为一名只会PJ的蒟蒻
  • 我带着试试的心态(为了省一次中考哈哈哈)
  • 同时报了PJ和TG??!
  • TGD1T1是一道洛谷原题
  • 都是提高组签到题
  • 铺设道路
  • 本蒻好像A了
  • 然而某些dalao们说线段树也能做。。。
  • 我还是玩自己的O(n)吧!!
  • T2稍微上升了些难度 货币系统
  • 本蒻先打了0.5h的dfs
  • 然而连样例都过不了
  • 气得O(t*n^2*a[n])可行性完全背包
  • 结果就过了大样例啧啧~~
  • 洛谷上提交90分,TLE了两个点
  • T3不会,能搞出多少部分分算多少啦
  • D2更不必说了
  • D2T1dfs小样例过了,大样例boom~
  • T2、T3?
  • 呵呵
  • PJ第一题好像写炸了
  • 用的getline(cin,s);
  • PJT2不会写高精qaq
  • T3动态规划瞎搞过了样例
  • T4自暴自弃了
  • 啧啧
  • TG期望得分0~100
  • PJ期望得分0~150
  • 希望这个期望是假的

  • 最后献上自己考场写的TGD1T2代码

  • 蒟蒻过于垃圾,并不能AC

    #include

    using namespace std;

    inline int read(void){
    int x=,f=;char ch=getchar();
    while(ch<''||ch>''){
    if(ch=='-') f=-;
    ch=getchar();
    }
    while(ch>=''&&ch<=''){
    x=(x<<)+(x<<)+ch-'';
    ch=getchar();
    }
    return x*f;
    }

    int t,n,a[],over,dp[];

    int main(){
    t=read();
    while(t--){
    memset(dp,,sizeof(dp));over=;
    n=read();memset(a,,sizeof(a));
    for(register int i=;i<=n;i++)
    a[i]=read();
    sort(a+,a+n+);
    dp[]=;
    for(register int i=;i<=n;i++){
    if(dp[a[i]]) over++;
    for(register int j=;j<=i;j++)
    for(register int k=;k<=a[n]-a[j];k++)
    dp[k+a[j]]|=dp[k];
    }
    printf("%d\n",n-over);
    }
    return ;
    }

两年OI一场空

贪心过样例,暴力出奇迹!!