NC232027. 「Nhk R1 A」Initiale Dorimu
描述
给定一个整数 。您需要输出一组正整数
,满足
且
,满足 。其中
表示按位异或,
表示按位或。
如果对按位异或和按位或有疑问,请阅读百度百科-位运算条目的解释。
输入描述
一行一个整数。
输出描述
一行三个正整数,或
。
示例1
输入:
11
输出:
9 3 10
C++ 解法, 执行用时: 4ms, 内存消耗: 448K, 提交时间: 2022-01-16 11:45:16
#include<bits/stdc++.h> int main() { int d; scanf("%d",&d); int b=d&-d; if(b==d) puts("-1"); else printf("%d %d %d\n",d,b,d-b); }
Python3 解法, 执行用时: 37ms, 内存消耗: 4648K, 提交时间: 2022-01-01 01:18:45
d = int(input()) lowbit = lambda x: x & (-x) a = lowbit(d) if a == d: print(-1) else: c = d ^ a print(a,d,c)
pypy3 解法, 执行用时: 109ms, 内存消耗: 25840K, 提交时间: 2021-12-30 19:09:08
d = int(input()) a = d & -d if not d ^ a: print(-1) else: print(a, d ^ a, d)