zoukankan      html  css  js  c++  java
  • CF每日一练 Codeforces Round #520 (Div. 2)

      比赛过程总结:过程中有事就玩手机了,后面打的状态不是很好,A题理解错题意,表明了内心不在状态,B题想法和思路都是完全正确的,但是并没有写出来,因为自己代码能力不强,思路不是特别清晰,把代码后面写乱了,而且出现了手误,这非常不应该。

      反思:打下来应该想好,打代码的时候一气呵成,尽量避免调BUG,看错题这种低级错误,每天比赛时应该关闭手机。

     本场目标:补题A-B-C-D-E

    A-

    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    #include<algorithm>
    #include<map>
    #include<vector>
    #include<math.h>
    using namespace std;
    int a[1006];
    int main(){
      int n;
      while(~scanf("%d",&n)){
         int flag=0;
         int ans=0;
         for (int i=1;i<=n;i++){
            scanf("%d",&a[i]);
         }
         ans=0;
         int len=0;
         for (int i=1;i<n;i++){
            if (a[i]+1==a[i+1] && flag==1){
                len++;
                if (a[i+1]==1000){
                    len++;
                }
            }else if(a[i]+1==a[i+1] && flag==0){
                if (a[i]==1){
                    len++;
                }
                if (a[i+1]==1000){
                    len++;
                }
                flag=1;
            }else if(a[i]+1!=a[i+1] && flag==1){
                ans=max(ans,len);
                len=0;
                flag=0;
            }
         }
         ans=max(ans,len);
         printf("%d
    ",ans);
      }
      return 0;
    }
    View Code

    B-

    #include<iostream>
    #include<stdio.h>
    #include<algorithm>
    #include<string.h>
    using namespace std;
    int e[1000];
    int x[1000];
    int kk;
    int upbit(int x)
    {
        int s=1;
        while(s<x)
        {
            s*=2;
            kk++;
        }
        return s;
    }
    int main()
    {
        int n;
        while(~scanf("%d",&n))
        {
            int cnt=0;
            kk=0;
            int maxx=0;
            int ans=1;
            int ans_k=0;
            memset(e,0,sizeof(e));
            memset(x,0,sizeof(x));
            for(int i=2; i*i<=n; i++)
            {
                if(n%i==0)
                {
                    ans*=i;
                    e[++cnt]=i;
                }
                int k=0;
                while(n%i==0)
                {
                    n/=i;
                    k++;
                    x[cnt]=k;
                    maxx=max(k,maxx);
                }
            }
    
            if (n!=1)
            {
                e[++cnt]=n;
                x[cnt]=1;
                ans*=n;
            }
            if (maxx!=0)
            {
                int s=upbit(maxx);
               // cout<<maxx<<" "<<s<<endl;
                for (int i=1; i<=cnt; i++)
                {
                   // cout<<x[i]<<endl;
                    if (x[i]<s)
                    {
                        kk++;
                        break;
                    }
                }
                printf("%d %d
    ",ans,kk);
            }
            else printf("%d 0
    ",ans);
        }
        return 0;
    }
    View Code
    有不懂欢迎咨询 QQ:1326487164(添加时记得备注)
  • 相关阅读:
    限制转交订单-采购直接批准PO
    限制更改采购订单的供应商地点
    限制采购订单行数量的小数位
    加工费采购订单批准后禁止更改订单数量
    限制ITEM读取其它物料的物料描述
    采购订单限制订单“行号”过大的控制
    限制行表新增记录
    采购订单行需求时间必输
    报价单内,同一物料只允许一条行价格记录
    限制头表新增记录
  • 原文地址:https://www.cnblogs.com/bluefly-hrbust/p/9972189.html
Copyright © 2011-2022 走看看