C++17(64) vs C++17

Правка en4, от Chef_Ka_Baap, 2021-02-17 18:23:26
// #pragma GCC optimize("Ofast,unroll-loops")
// #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,mmx,avx,avx2")
#include <bits/stdc++.h>
#define ll long long
#define ull unsigned long long
#define lld long double
#define w(x) ll x;cin>>x;while(x--)
#define all(x) x.begin(), x.end()
#define lb lower_bound
#define ub upper_bound
#define iceil(n, x) (((n) + (x) - 1) / (x))
#define gcd(a,b)	__gcd(a,b)
#define lcm(a,b)	__detail::__lcm(a,b)
#define goog(tno) cout << "Case #" << tno <<": "
#define PRESS_F_TO_PAY_RESPECT ios_base::sync_with_stdio(false), cin.tie(nullptr)
using namespace std;


ll dx[]= {-1,-1,-1,0,0,1,1,1};
ll dy[]= {-1,0,1,-1,1,-1,0,1};
const lld pi=3.1415926535897932384626433832795;
const ll INF=1e18;
const ll mod=1000000007;
const ll maxn=1e5+5;

// a^2=2*b+1;
// c=b+1;

int main(){
    PRESS_F_TO_PAY_RESPECT;
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);
    w(T){
        ll n;   cin>>n;
        ll ans=0;
        for(ll a=2;a*a<=2*n+1;a++){
            ll b=((a*a)-1)/2;
            ll c=b+1;
            if(a*a+b*b!=c*c) continue;
            if(c!=a*a-b)    continue;
            if(a>=1&&a<=n&&b>=1&&b<=n&&c>=1&&c<=n){
                ans++;
            }
        }
        cout<<ans<<'\n';
    }
    return 0;
}

Question link

Hey there, can anyone tell me why first code got accepted using C++17(64) but not with C++17 ?

История

 
 
 
 
Правки
 
 
  Rev. Язык Кто Когда Δ Комментарий
en4 Английский Chef_Ka_Baap 2021-02-17 18:23:26 1317
en3 Английский Chef_Ka_Baap 2021-02-17 18:19:02 28
en2 Английский Chef_Ka_Baap 2021-02-17 18:18:03 2652 Tiny change: '\n~~~~~\n// ' -> '~~~~~\n// '
en1 Английский Chef_Ka_Baap 2021-02-17 18:14:39 158 Initial revision (published)