V - Maximum GCD

Posted 1898

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了V - Maximum GCD相关的知识,希望对你有一定的参考价值。

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
typedef long long ll;

ll f(ll a,ll b)
{
    if(a%b == 0) return b;
    else f(b,a%b);
}

int main()
{
    ll a,b,T;
    scanf("%lld",&T);
    while(T--)
    {
        ll A[105],len=0,Max=0;
        memset(A,0,sizeof(A));
        char ch;

while(1) /*这一段是代码的关键部分,实现的功能是当键入回车键时,会结束读入数组; {                       scanf("%lld",&A[len++]);      用len记录数组下标;   while((ch=getchar())== )     当读入的字符是空格时,一直循环 ; ungetc(ch,stdin); ungetc函数:字符返回函数,如果读入到的东西不是”空格“的话,那么将getchar读到的数据返回到缓冲区,下一次scanf就会读进去,如果是回车,那么就break; if(ch==\n) break;         }

//printf("len = %lld\n",len); for(int i=0;i<len-1;i++) { for(int j=i+1;j<len;j++) { Max=max(f(A[i],A[j]),Max); } } printf("%lld\n",Max); } return 0; }

知识点:一直读入数据,直到键入回车键是停止。

以上是关于V - Maximum GCD的主要内容,如果未能解决你的问题,请参考以下文章

启发式搜索Codechef March Cook-Off 2018. Maximum Tree Path

UVA - 11827 - Maximum GCD,10200 - Prime Time (数学)

UVA 11827Maximum GCD

UVA 11827 Maximum GCD (输入流)

[CC-ANUGCD]Maximum number, GCD condition

leetcode_1292. Maximum Side Length of a Square with Sum Less than or Equal to Threshold_[二维前缀和](代码片段