zoukankan      html  css  js  c++  java
  • 51nod1429 巧克力

    【题解】

      找一下两个面积s1,s2的2和3的因子数,把他们除掉,如果s1,s2不相等,就是-1,否则可以用s1,s2的2和3的因子数计算答案。

      

     1 #include<cstdio>
     2 #include<algorithm>
     3 #define LL long long 
     4 #define rg register
     5 using namespace std;
     6 LL t1,t2,a2,a3,b2,b3,ans;
     7 inline int read(){
     8     int k=0,f=1; char c=getchar();
     9     while(c<'0'||c>'9')c=='-'&&(f=-1),c=getchar();
    10     while('0'<=c&&c<='9')k=k*10+c-'0',c=getchar();
    11     return k*f;
    12 }
    13 int main(){
    14     t1=1ll*read()*read(); t2=1ll*read()*read();
    15     while(t1%2==0) a2++,t1>>=1;
    16     while(t1%3==0) a3++,t1/=3;
    17     while(t2%2==0) b2++,t2>>=1;
    18     while(t2%3==0) b3++,t2/=3;
    19     if(t1!=t2){
    20         puts("-1"); return 0;
    21     }
    22     ans=abs(a3-b3);
    23     if(a3<b3) b2+=ans; else a2+=ans;
    24     ans+=abs(a2-b2);
    25     printf("%lld
    ",ans);
    26     return 0;
    27 }
    View Code
  • 相关阅读:
    蒟蒻的填坑计划
    现在的状态....
    date modify
    set source
    image source
    simple auth
    net
    bridge
    iptable
    namespace
  • 原文地址:https://www.cnblogs.com/DriverLao/p/9074314.html
Copyright © 2011-2022 走看看