You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
956 B
C++
32 lines
956 B
C++
#define _CRT_SECURE_NO_WARNINGS
|
|
#define _SILENCE_CXX17_C_HEADER_DEPRECATION_WARNING
|
|
#include <bits/stdc++.h>
|
|
using namespace std;
|
|
#define CRP(t, x) const t &x
|
|
#define OPL(t, x) bool operator<(CRP(t, x)) const
|
|
#define FIL(x, v) memset(x, v, sizeof(x))
|
|
#define CLR(x) FIL(x, 0)
|
|
#define NE1(x) FIL(x, -1)
|
|
#define INF(x) FIL(x, 0x3f)
|
|
typedef long long ll, i64;
|
|
bitset<32> BM;
|
|
int main()
|
|
{
|
|
int a, b, c;
|
|
while (~scanf("%d%d%d", &a, &b, &c))
|
|
{
|
|
long long cnt[] = {0, 0, 0};
|
|
for (int x = 1; x <= a; x++)
|
|
for (int y = 1; y <= b; y++)
|
|
{
|
|
if ((x & y) > c) cnt[0]++;
|
|
if ((x ^ y) < c) cnt[1]++;
|
|
if ((x & y) > c && (x ^ y) < c) cnt[2]++;
|
|
}
|
|
cout << (BM = a) << endl;
|
|
cout << (BM = b) << endl;
|
|
cout << (BM = c) << endl;
|
|
printf("%lld : %lld + %lld - %lld\n", cnt[0] + cnt[1] - cnt[2], cnt[0], cnt[1], cnt[2]);
|
|
}
|
|
return 0;
|
|
} |