zoukankan      html  css  js  c++  java
  • MemSQL Start[c]UP 2.0

    搞到凌晨4点一个没出,要gg了。

    A. Golden System http://codeforces.com/contest/458/problem/A

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<cmath>
     4 #include<algorithm>
     5 using namespace std;
     6 const double q=(sqrt(5.0)+1)/2;
     7 const int M=100010;
     8 char a[M],b[M];
     9 int sa[M],sb[M];
    10 void gxrev(char c[]){
    11     for(int i=0,j=strlen(c)-1;i<j;i++,j--){
    12         swap(c[i],c[j]);
    13     }
    14 }
    15 double gxpow(double x,int p){
    16     double res=1;
    17     while(p){
    18         if(p&1) res*=x;
    19         x*=x;
    20         p>>=1;
    21     }
    22     return res;
    23 }
    24 int main(){
    25     while(~scanf("%s%s",a,b)){
    26         gxrev(a);
    27         gxrev(b);
    28         int la=strlen(a);
    29         int lb=strlen(b);
    30         int len=max(la,lb);
    31         for(int i=la;i<len;i++) a[i]='0';
    32         for(int i=lb;i<len;i++) b[i]='0';
    33         a[len]=b[len]=0;
    34         for(int i=0;i<len;i++){
    35             sa[i]=a[i]-'0';
    36             sb[i]=b[i]-'0';
    37         }
    38         for(int i=0;i<len;i++){
    39             if(i+2<len){
    40                 if(sa[i]&&sa[i+1]){
    41                     int sma=min(sa[i],sa[i+1]);
    42                     sa[i]-=sma;
    43                     sa[i+1]-=sma;
    44                     sa[i+2]+=sma;
    45                 }
    46                 if(sb[i]&&sb[i+1]){
    47                     int sma=min(sb[i],sb[i+1]);
    48                     sb[i]-=sma;
    49                     sb[i+1]-=sma;
    50                     sb[i+2]+=sma;
    51                 }
    52             }
    53         }
    54         int flag=0;
    55         for(int i=len-1;i>=0;i--){
    56             int sma=min(sa[i],sb[i]);
    57             sa[i]-=sma;
    58             sb[i]-=sma;
    59             if(i-2>=0){
    60                 if(sa[i]){
    61                     if(sa[i]>M){
    62                         flag=1;
    63                         break;
    64                     }
    65                     sa[i-1]+=sa[i];
    66                     sa[i-2]+=sa[i];
    67                     sa[i]=0;
    68                 }
    69                 if(sb[i]){
    70                     if(sb[i]>M){
    71                         flag=-1;
    72                         break;
    73                     }
    74                     sb[i-1]+=sb[i];
    75                     sb[i-2]+=sb[i];
    76                     sb[i]=0;
    77                 }
    78             }
    79         }
    80         if(flag==1){
    81             puts(">");
    82             continue;
    83         }
    84         if(flag==-1){
    85             puts("<");
    86             continue;
    87         }
    88         double suma=0,sumb=0;
    89         for(int i=0;i<len&&i<3;i++){
    90             suma+=gxpow(q,i)*sa[i];
    91             sumb+=gxpow(q,i)*sb[i];
    92         }
    93         if(suma>sumb) puts(">");
    94         else if(suma<sumb) puts("<");
    95         else puts("=");
    96     }
    97     return 0;
    98 }
    View Code

    end

  • 相关阅读:
    Springboot单元测试(MockBean||SpyBean)
    使用 Mockito 单元测试 – 教程
    spring结合mockito
    Spatis service单元测试: 使用mock mapper的方式
    单元测试Mockito中的Mock和Spy
    强大的Mockito测试框架
    Mockito单测,mock service层的mapper
    Mockito教程
    SetupFactory 制作安装包
    fiddler的一些记录
  • 原文地址:https://www.cnblogs.com/gaolzzxin/p/3904183.html
Copyright © 2011-2022 走看看