/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 540.0 KiB
#2 Accepted 11ms 540.0 KiB
#3 Accepted 12ms 332.0 KiB
#4 Accepted 8ms 540.0 KiB
#5 Accepted 15ms 540.0 KiB
#6 Accepted 1ms 540.0 KiB
#7 Accepted 1ms 344.0 KiB
#8 Accepted 1ms 536.0 KiB
#9 Accepted 36ms 540.0 KiB
#10 Accepted 37ms 536.0 KiB
#11 Accepted 1ms 540.0 KiB

Code

#include<bits/stdc++.h>
using namespace std;

bool sq(long long hysq)
{
    return(ceil(sqrt(hysq))==floor(sqrt(hysq)));
}

void sir(long long b)
{
    long long hi, hysq;
    long long max_peri = -1;
    long long n = floor((b*b)/2)+5;
    for(hi=n; hi>=1; hi--)
    {
        long long hysq = hi*hi + b*b;

        if (sq(hysq)) {
            long long peri = hi + b + sqrt(hysq);
            max_peri = max(max_peri, peri);
        }
    }
    if(max_peri != -1)
    {
        cout<<max_peri<<endl;
    }
    else{cout<<"-1"<<endl;}

}
int main()
{
    long long t;
    cin>>t;
    while(t--)
    {   
        long long b;
        cin>>b;
        sir(b);
    }
    return 0;
}

Information

Submit By
Type
Submission
Problem
P1027 Right triangle
Language
C++20 (G++ 13.2.0)
Submit At
2024-03-12 10:33:20
Judged At
2024-03-12 10:33:20
Judged By
Score
100
Total Time
37ms
Peak Memory
540.0 KiB