解説
なんかの検索エンジンで「完全数 一覧」と調べよう。すると、 $10^{18}$ 以下の完全数が $7$ 個しかないことに気付くだろう。
よって、これらとの一致判定を行えばよい。
解答例
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
int main() {
ll n;cin>>n;
if(n==6||n==28||n==496||n==8128||n==33550336||n==8589869056||n==137438691328)cout<<"Yes\n";
else cout<<"No\n";
}