• 2016年11月15日noip模拟赛


    苟..

    1.谜题

     1 #include <iostream>
     2 #include <stdio.h>
     3 using namespace std;
     4 int main()
     5 {
     6      freopen("puzzle.in","r",stdin);
     7      freopen("puzzle.out","w",stdout);
     8      int n;
     9      cin>>n;
    10      if (n<=4) cout<<"YES";
    11      else cout<<"XLSB";
    12      return 0; 
    13 }
    faq

    2.选修课

    #include <iostream>
    #include <stdio.h>
    #include <algorithm>
    #include <cmath>
    #include <string>
    #include <string.h>
    using namespace std;
    char a[233333];
    int num[1000]={};
    long long c[5001][5001];
    bool cmp(int x,int y)
    {
        return x>y;
    }
    int main()
    {
        int n,i,j;
        freopen("course.in","r",stdin);
        freopen("course.out","w",stdout);
        scanf("%s",a);
        scanf("%d",&n);
        int len=strlen(a);
        for (i=0;i<len;i++)
          num[a[i]-'a']++;
        sort(num,num+26,cmp);
        int ans=0;
        for (i=0;i<=n-1;i++)
          ans+=num[i];
        cout<<ans<<endl;
        int sps=0;
        int adln=0;
        for (i=0;i<=n-1;i++)
          if (num[i]==num[n-1]) sps++;
        for (i=0;i<=26;i++)
          if (num[i]==num[n-1]) adln++;
        c[0][0]=1ll;
        for (i=1;i<=26;i++)
          {
            c[i][0]=1;
            for (j=1;j<=i;j++)
              c[i][j]=(long long)c[i-1][j]+c[i-1][j-1];
        }
        cout<<c[adln][sps]<<endl;
        return 0;
    }
    faq

    3.质数

    /*
    kotori:
    首先考虑,质数<=根号n的情况 
    我们考虑 根号n以内的质数所组成的最优方案吧。
    可以搜索。(大概) 
    再考虑根号n以后的质数的方案
    “好难啊。。不会写啊” GG
    
    */
    #include <iostream>
    #include <stdio.h>
    #include <algorithm>
    #include <cmath>
    #include <string>
    #include <string.h>
    using namespace std;
    int prime[2333];
    bool light[23333]={};int maxsqrt=1;
    int maxnum_233=0;int n,m;
    void faq()
    {
        int i,j,temp=0;
        for (i=maxsqrt+1;i<=m;i++)
        {int rem=0;int kotori=0;
        for (j=prime[i];j<=n;j+=prime[i])
        {if (!light[j]) rem++;
        else kotori++;}
        if (rem>kotori)
        {for (j=prime[i];j<=n;j+=prime[i])
        {if (!light[j]) light[j]=1;
        else light[j]=0;}}
        }
        for (i=1;i<=n;i++)
        if (light[i]) temp++;
        maxnum_233=max(temp,maxnum_233);
    }
    void dfs(int x)
    {
        //cout<<x;
        //cout<<233;
        //while(1);
        if (x>maxsqrt)
        {faq();return ;}
        else
        {dfs(x+1);
        for (int i=prime[x];i<=n;i+=prime[x])
        {if (light[i])light[i]=0;
        else light[i]=1;}
        dfs(x+1);}
    }
    int main()
    {
        int i,j,T;//暴力搜索一下根号n以内的最优解吧。。
        freopen("prime.in","r",stdin);
        freopen("prime.out","w",stdout);
        scanf("%d",&T);
        while(T--)
          {
            scanf("%d%d",&n,&m);
            maxsqrt=1;
            int minsqrt=m;
            maxnum_233=0;//忘记清0辣然后一直找错误。。。QAQ 
            memset(light,0,sizeof(light));
            for (i=1;i<=m;i++)
              scanf("%d",&prime[i]);
            sort(prime+1,prime+m+1);
            for(i=1;i<=m;i++)
            if (prime[i]<=sqrt(n))
              maxsqrt=i;
            dfs(1);
            cout<<maxnum_233<<endl;
          }
          return 0;
    }
    faq

    今天题目难度还好。。

  • 相关阅读:
    值类型、引用类型的区别
    SharePoint Server 2013 Excel Web Access无法显示
    SharePoint 2013报错之“指定的文件不是有效的电子表格或者没有包含要导入的数据”
    SharePoint 2013备份方法整理
    SQL 2005报错之Restore fail for Server 'DatabaseServerName'.
    SQL Server 2012自动备份
    SharePoint 2013在浏览器中打开pdf文档
    摸鱼,搞RW
    蛋疼的远程声音,这次用蓝牙试试看
    Win10 IoT Core 更改密码(PowerShell)
  • 原文地址:https://www.cnblogs.com/yz12138/p/6064997.html
Copyright © 2020-2023  润新知