zoukankan      html  css  js  c++  java
  • 845B

    845B - Luba And The Ticket

    自己写的快蠢哭了,一开始少考虑了几种情况还被hack。。。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 const int maxn=210;
     4 char s[8];
     5 int a[9],b[9];
     6 int n;
     7 
     8 int main(){
     9    while(scanf("%s",s)!=EOF){
    10         for(int i=0;i<6;i++) {a[i]=-(int)(s[i]-'0');b[i]=9+a[i];}
    11         sort(a,a+3);
    12         sort(b,b+3);
    13         int a1=a[0];
    14         int b1=b[2];
    15         int a2=a[1]+a[0];
    16         int b2=b[1]+b[2];
    17         int a3=a[0]+a[1]+a[2];
    18         int b3=b[0]+b[1]+b[2];
    19         sort(a+3,a+6);
    20         sort(b+3,b+6);
    21         int c1=a[3];
    22         int d1=b[5];
    23         int c2=a[3]+a[4];
    24         int d2=b[4]+b[5];
    25         int c3=a[3]+a[4]+a[5];
    26         int d3=b[3]+b[4]+b[5];
    27 
    28         int p=-(a[0]+a[1]+a[2]);
    29         int q=-(a[3]+a[4]+a[5]);
    30         int r=q-p;
    31         if(r==0){
    32             puts("0");
    33             continue;
    34         }else if(r>0){
    35             if(b1>=r||-c1>=r){
    36                 puts("1");
    37                 continue;
    38             }else if(b2>=r||-c2>=r||(b1-c1)>=r){
    39                 puts("2");
    40                 continue;
    41             }else if(b3>=r||-c3>=r||(b2-c1)>=r||(b1-c2)>=r){
    42                 puts("3");
    43                 continue;
    44             }
    45         }else if(r<0){
    46             if(a1<=r||d1>=-r){
    47                 puts("1");
    48                 continue;
    49             }else if(a2<=r||d2>=-r||(-a1+d1)>=-r){
    50                 puts("2");
    51                 continue;
    52             }else if(a3<=r||d3>=-r||(-a2+d1)>=r||(-a1+d2)>=r){
    53                 puts("3");
    54                 continue;
    55             }
    56         }
    57    }
    58    return 0;
    59 }
    =_=||

    下面这个是看的题解

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 int bit1[7],bit2[7];
     4 
     5 int main(){
     6     int x;
     7     while(scanf("%d",&x)!=EOF){
     8         int pos=0;
     9         memset(bit1,0,sizeof(bit1));
    10         while(x){
    11             bit1[pos++]=x%10;
    12             x/=10;
    13         }
    14         int ans=1e9;
    15         for(int i=0;i<1000000;i++){
    16             int pos=0;
    17             int temp=i;
    18             memset(bit2,0,sizeof(bit2));
    19             while(temp){
    20                 bit2[pos++]=temp%10;
    21                 temp/=10;
    22             }
    23             if(bit2[0]+bit2[1]+bit2[2]==bit2[3]+bit2[4]+bit2[5]){
    24                 ans=min(ans,
    25                         (bit2[0]!=bit1[0])+(bit2[1]!=bit1[1])+
    26                         (bit2[2]!=bit1[2])+(bit2[3]!=bit1[3])+
    27                         (bit2[4]!=bit1[4])+(bit2[5]!=bit1[5]));
    28             }
    29         }
    30         printf("%d
    ",ans);
    31     }
    32 }
    View Code
  • 相关阅读:
    Metadata Lock原理5
    Seconds_Behind_Master
    Metadata Lock原理4
    MySQL Troubleshoting:Waiting on query cache mutex 腾讯数据库工程师:幕南风
    Metadata Lock原理2
    Metadata Lock原理1
    Online DDL与pt-online-schema-change
    Solaris 安装JDK
    RAID 概述
    4K Block Size的Device和 Aligned IO
  • 原文地址:https://www.cnblogs.com/yijiull/p/7423809.html
Copyright © 2011-2022 走看看