• vijos leave-绿光


    Leave-绿光

    背景

    期待这一份幸运,和一份冲劲,多么奇妙的际遇……。燕姿在演唱完绿光这首歌后,出给了姿迷一个考题。

    北欧有一个传说!
    人一生中能看见绿光!
    他就一生都可以得到幸福!

    描述

    燕姿唱完这首歌,天上降落了一道绿光,在地上形成了一个矩形的映射,矩形的长为a,宽为b。燕姿向姿迷出了一个考题,谁能够把这个矩形绿光阵分成若干个正整数的正方形,谁的正方形边长之和最小,他就将得到燕姿的一个合影。姿迷们都很想得到合影,可是怎么分才最小呢?大家都束手无策,现在,这个问题交给你了。

    歌迷X:呜呜呜,俺的语文不好,听不懂你在讲什么。

    燕姿:别怕,其实这个问题可以简化为……

    将边长为正整数a,b的长方形划分成若干边长均为正整数,每个正方形的边均平行于矩形的相应边,试求这些正方形边之和的最小值MIN。

    (如果这个长方形可以分成N个正方形,其中每个边长为Ai,那么MIN=A1+A2+^^^+AN
    注意,数组A中的元素可能相等)

    格式

    输入格式

    一共10行
    每行两个正整数,Ai,Bi

    对于30%的数据,Ai,Bi<maxint
    对于100%的数据,Ai,Bi<maxlongint;

    输出格式

    一共10行
    每行一个整数,输出MINi

    样例1

    样例输入1

    1 1
    2 1
    3 1
    4 1
    5 1
    6 1
    7 1
    8 1
    9 1
    10 1
    

    样例输出1

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    

    限制

    每点1s

    提示

    对于样例,可全分长边长为一的正方形,并且可以证明找不到比其更优的分割方法;
    加油吧,为了得到燕姿的合影(#17)

    来源

    孙燕姿
    图片

     
     
    思路:不断地求可取的最大的正方形   就是gcd
     1 #include<bits/stdc++.h>
     2 using namespace std;
     3 
     4 long long int l,w,ans;
     5 int main()
     6 {
     7     for(int i=1;i<=10;i++)
     8     {
     9         ans=0;
    10         cin>>l>>w;
    11         if(l<w) swap(l,w);
    12         if(w==1)
    13         {
    14             cout<<l*w<<endl;
    15             continue;
    16         }
    17         while(l!=w)
    18         {
    19             if(l<w) swap(l,w);
    20             ans+=l/w*w;
    21             l=l%w;
    22             if(l==0||w==0)   break;
    23         }
    24         ans+=l;
    25         cout<<ans<<endl;
    26      } 
    27     
    28     return 0;
    29 }
    View Code
  • 相关阅读:
    Qt对文件的删除、复制、移动、可执行文件位置
    qt关于窗口关闭触发函数/信号
    QString.toUtf8().data()的问题 & char *转换到QByteArray注意
    Qt中类型之间的转换
    C++中auto和decltype的区别和功能
    Delphi 系统[11]关键字和保留字 goto、label
    Delphi 系统[10]关键字和保留字 with
    Delphi 系统[9]关键字和保留字 for、to、downto、do、while、repeat、until
    Delphi 系统[8]关键字和保留字 if、then、else、case
    Delphi 系统[7]关键字和保留字 begin、end
  • 原文地址:https://www.cnblogs.com/chen74123/p/7339357.html
Copyright © 2020-2023  润新知