嘘~ 正在从服务器偷取页面 . . .

nywOJ101 2^a + 2^b problem 题解


nywOJ101 2^a + 2^b problem 题解

题目链接:2^a + 2^b problem

题意

给定 \(a,b~(0 \le a,b \le 63)\) ,求 \(2^a + 2^b\)

输入格式

仅一行,两个整数 \(a,b\)

输出格式

仅一行,即答案。

特判 \(a=b=63\) 的情况即可。

当然如果你用 __int128 也是可以的,本题就是个弱智签到题。

时间复杂度 \(\mathcal{O}(1)\)

代码:

#include <bits/stdc++.h>
using namespace std;
// #define int long long
// #define INF 0x3f3f3f3f3f3f3f3f
void up(int &x, int y) { x < y ? x = y : 0; }
void down(int &x, int y) { x > y ? x = y : 0; }
#define rep(i, a, b) for(int i = (a), i##END = (b); i <= i##END; i++)
#define Rep(i, a, b) for(int i = (a), i##END = (b); i >= i##END; i--)
#define N ((int)())

signed main()
{
    ios::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    // freopen("check.in","r",stdin);
    // freopen("check.out","w",stdout);
    int a, b; cin >> a >> b; // 0 <= a,b <= 63
    if(a == 63 && b == 63) cout << "18446744073709551616\n";
    else cout << ((1ull << a) + (1ull << b)) << '\n';
    return 0;
}

题外话

好弱智的题,果然是我出的。


文章作者: q779
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-ND 4.0 许可协议。转载请注明来源 q779 !
评论
  目录