首页 > 其他分享 >GCD、LCM、位运算

GCD、LCM、位运算

时间:2024-11-28 20:03:58浏览次数:6  
标签:运算 GCD int ll long include solve LCM define

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
void solve() {
	ll ban=1;
	for(int i=2;i<=9;i++){
		ll w=lcm(i,i+1);
		ban=lcm(w,ban);
	}
	ll x;
	cin>>x;
	ll ans=x/ban;
	cout<<ans;
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	//    cin >> _;
	while (_--)
		solve();
}

 

 

#include <bits/stdc++.h>
using namespace std;
#define ll long long
void solve() {
	ll a, b, cnt = 0;
	cin >> a >> b;
	while (a != b) {
		if (a < b)swap(a, b);
		cnt += (a - 1) / b;
		a -= (a - 1) / b * b;
	}
	cout << cnt;
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	//    cin >> _;
	while (_--)
		solve();
}

 

 

#include <bits/stdc++.h>
using namespace std;
#define ll long long
void solve() {
	vector<ll>a(3);
	cin >> a[0] >> a[1] >> a[2];
	sort(a.begin(), a.end());
	ll w = gcd(a[0], a[2]);
	cout << a[0] / w << "/" << a[2] / w;
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	//    cin >> _;
	while (_--)
		solve();
}

 

#include <bits/stdc++.h>
using namespace std;
#define ll long long
void solve() {
	int q, n;
	scanf("%d", &q);
	int odd[100005], even[100005];
	odd[0] = 1;
	for (int i = 1; i < 100001; i = i + 2) {
		odd[i] = i + 2;
		odd[i + 1] = i + 1;
	}
	for (int i = 0; i < 100001; i = i + 2) {
		even[i] = i + 2;
		even[i + 1] = i + 1;
	}
	while (q--) {
		scanf("%d", &n);
		if (n % 2) {
			for (int i = 0; i < n; i++) printf("%d ", odd[i]);
		} else for (int i = 0; i < n; i++) printf("%d ", even[i]);
		printf("\n");
	}

}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
//	cin >> _;
	while (_--)
		solve();
}

 

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
#define lowbit(x) ((x) & (-x))
#define lc u << 1
#define rc u << 1 | 1
#define ULL unsigned long long
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
const int mod1 = 1331;
const ll llinf = 0x3f3f3f3f3f3f3f3f;
const int inf = 0x3f3f3f3f;
typedef pair<ll, ll> PII;
int dx[] = {-1, 1, 0, 0}, dy[] = {0, 0, -1, 1};
int b[1005][1005], a[1005];
void solve() {
	int n;
	cin >> n;
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n; j++) {
			cin >> b[i][j];
		}
	}
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < n; j++) {
			a[i] |= b[i][j];
		}
	}
	for (int i = 0; i < n; i++) {
		cout << a[i] << " ";
	}
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	//    cin >> _;
	while (_--)
		solve();
	return 0;
}

 

 

 

#include <bits/stdc++.h>
#define int unsigned long long
using namespace std;
const int N = 1e5 + 5;
int T, n, k, a[N], b[N], sum;
signed main()
{
	scanf("%u", &T);
	while(T--)
	{
		scanf("%u %u", &n, &k);
		sum = 0;
		for(int i = 1;i <= n;i++)
		{
			scanf("%u", &a[i]);
			sum ^= a[i];
		}
		k %= 2;
		k += n % 2;
		for(int i = 1;i <= k;i++)
		{
			for(int i = 1;i <= n;i++)
				b[i] = sum ^ a[i];
			sum = 0;
			for(int i = 1;i <= n;i++)
			{
				a[i] = b[i];
				sum ^= a[i];
			}
		}
		for(int i = 1;i <= n;i++)
			printf("%u ", a[i]);
		printf("\n");
	}
	return 0;
}

 

 

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
#define lowbit(x) ((x) & (-x))
#define lc u << 1
#define rc u << 1 | 1
#define ULL unsigned long long
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
const int mod1 = 1331;
const ll llinf = 0x3f3f3f3f3f3f3f3f;
const int inf = 0x3f3f3f3f;
typedef pair<ll, ll> PII;
int dx[] = {-1, 1, 0, 0}, dy[] = {0, 0, -1, 1};
void solve() {
	int n, m;
	cin >> n >> m;
	if (n == 1 && m == 2 || n == 2 && m == 1) {
		cout << "Yes" << "\n";
	} else {
		cout << "No" << "\n";
	}
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	cin >> _;
	while (_--)
		solve();
}

 

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
#define lowbit(x) ((x) & (-x))
#define lc u << 1
#define rc u << 1 | 1
#define ULL unsigned long long
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
const int mod1 = 1331;
const ll llinf = 0x3f3f3f3f3f3f3f3f;
const int inf = 0x3f3f3f3f;
typedef pair<ll, ll> PII;
int dx[] = {-1, 1, 0, 0}, dy[] = {0, 0, -1, 1};
void solve() {
	int n;
	cin >> n;
	int k = 1, cnt = 0;
	while (k < n)k *= 2, cnt++;
	if (k == n) {
		cout << k << ' ' << 0 << endl;
		return ;
	}
	cout << k << ' ';
	for (int i = 0; i <= 30; i++) {
		if ((n >> i) & 1) {
			cout << cnt - i << endl;
			return ;
		}
	}
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	//    cin >> _;
	while (_--)
		solve();
}

 

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
#define lowbit(x) ((x) & (-x))
#define lc u << 1
#define rc u << 1 | 1
#define ULL unsigned long long
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
const int mod1 = 1331;
const ll llinf = 0x3f3f3f3f3f3f3f3f;
const int inf = 0x3f3f3f3f;
typedef pair<ll, ll> PII;
int dx[] = {-1, 1, 0, 0}, dy[] = {0, 0, -1, 1};
void solve() {
	ll n,m,flag=1;
	cin>>n>>m;
	if(n==m){
		cout<<0<<"\n";
		flag=0;
	}
	if(flag){
	if((n|m)==n||(n|m)==m){
		cout<<1<<"\n";
	}else{
		cout<<2<<"\n";
	}}
	flag=1;
	}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	cin >> _;
	while (_--)
		solve();
}

 

 

#include <bits/stdc++.h>
#include <numeric>
using namespace std;
#define endl '\n'
#define ll long long
#define lowbit(x) ((x) & (-x))
#define lc u << 1
#define rc u << 1 | 1
#define ULL unsigned long long
const int N = 2e5 + 10;
const int mod = 1e9 + 7;
const int mod1 = 1331;
const ll llinf = 0x3f3f3f3f3f3f3f3f;
const int inf = 0x3f3f3f3f;
typedef pair<ll, ll> PII;
int dx[] = {-1, 1, 0, 0}, dy[] = {0, 0, -1, 1};
void solve() {
	ULL x;
	cin>>x;
	cout<<((x&0x0000ffff)<<16|(x&0xffff0000)>>16)<<"\n";
	}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
//	cin >> _;
	while (_--)
		solve();
}

 

#include <bits/stdc++.h>
using namespace std;
#define ll long long
void solve() {
	int n;
	cin >> n;
	int k = -1;
	while (n) {
		k++;
		n = n / 2;
	}
	int ans = pow(2, k) - 1;
	cout << ans << endl;
}
int main() {
	ios::sync_with_stdio(false);
	cin.tie(0), cout.tie(0);
	int _ = 1;
	cin >> _;
	while (_--)
		solve();
}

标签:运算,GCD,int,ll,long,include,solve,LCM,define
From: https://blog.csdn.net/2401_86494108/article/details/144119044

相关文章

  • C语言:运算符1(混合运算和算数运算符)
    各类数值型数据间的混合运算整型、实型、字符型数据间可以进⾏混合运算,如:10-'a'*1.5运算时,参加运算的两个数据如果类型不同,则⾸先将其类型转换成⼀致再运算,转换规则是:将优先级低的类型转换到优先级⾼的类型,被称作自动类型转换(小转大)。⾃动类型转换的形式为:大类型......
  • C语言:运算符2(赋值运算符)
    赋值运算符“=”称之为赋值运算符,其作用是将一个数据赋值给一个变量。如:a=5执行赋值运算的结果,是将右边的数据存入左边变量对应的内存单元中,赋值运算的顺序:由右向左赋值规则如果赋值运算符两侧的类型不一致,则在赋值时要进行类型转换,转换规则为:实型→整型变量:舍弃⼩数部......
  • python学习笔记09 python中的运算符
    上一篇记录中我们学习了介绍python中的进制、进制转换、原码反码补码这一篇我们来介绍python中的各类运算符及使用运算符操作数:参与运算的变量或者常量或具体的数值操作符:将参与运算的量连接起来的符号表达式:由操作数和操作符构成且符合python语法规范的式子,不同的操......
  • C语言(运算符及位运算)
    运算符算术运算符基本的算术运算符+、-:正负值运算符(单目运算符)。+、-、*、/、%:加减乘除取余运算符(双目运算符)注意:进行除法运算的时候,除数是不能为0的。这些算术运算符的运算顺序与数学上的运算顺序相同。表达式和运算符的优先级与结合性算术表达式:是指用算术运算符......
  • C语言 -运算符
    运算符各类数值型数据间的混合运算整型、实型、字符型数据间可以进行混合运算运算时,参加运算的两个数据如果类型不同,则首先将其类型转换成一致再运算,转换规则是:将优先级低的类型转换到优先级高的类型,被称作自动类型转换(小转大——不会损失数据)。大类型类型变量名=......
  • 运算符重载
    运算符重载就是赋予已有的运算符多重含义。C++通过重新定义运算符,使它能够用于特定类的对象执行特定的功能。重载运算符的一般格式为:函数类型operator运算符名称(形参表列){对运算符的重载处理}这里有一个对+运算符重载的例子,首先定义一个复数类:classComplex{pu......
  • C语言(数据,运算符)
    C语言学习笔记2——数据,运算符变量概念在程序执行过程中其中的值可以被改变的量变量代表内存中具有特定属性的一个存储单元,他是用来存储数据的,也就是存变量的值变量应有个名字,以便于通过名字访问变量举例:#include<stdio.h>intmain(){ //①声明变量并初始化 i......
  • 1024: 1024 四则运算
    题目描述我们经常进行四则运算(+、-、、/、%),请编程实现。输入输入文件中每行包括两个整数a和b和一个运算符(+、-、*、/、%),要求根据运算符来输出运算结果,其中b不为0。输出按格式输出结果,每行一个,b为负数时需要加上()进行运算。样例输入 复制53+-53*5-3-样例输出......
  • Go语言基本数据类型和运算符
    1.Go语言基本数据类型和运算符Go语言是静态编程语言。在Go语言中,数据类型用于声明函数和变量。当编译器编译Go程序时,通过某个值的数据类型,编译器就能够知晓要为这个值分配多大内存。值被存储在指定大小的内存中后,就可以通过算术、关系、逻辑等运算符对其进行计算。1.1Go语言变......
  • 【异或运算】codeforces 1153 B. Dima and a Bad XOR
    前言异或运算:是一种在二进制数系统中使用的逻辑运算。它的基本规则是对两个二进制位进行比较,如果这两个位不同,则结果为\(1\);如果相同,则结果为\(0\)。异或运算的规则\(0\)XOR\(0\)=\(0\)\(0\)XOR\(1\)=\(1\)\(1\)XOR\(0\)=\(1\)\(1\)XOR\(1\)=\(0\)特性......