专栏文章

题解:P12681 【MX-J15-T1】叉叉学习数据类型

P12681题解参与者 2已保存评论 1

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
1 条
当前快照
1 份
快照标识符
@mip5q6bw
此快照首次捕获于
2025/12/03 06:36
3 个月前
此快照最后确认于
2025/12/03 06:36
3 个月前
查看原文

P12681 【MX-J15-T1】叉叉学习数据类型题解

思路

主要问题就在于 nn 的长度达到 100100,因此用 __int128 存储,按题目顺序判断并输出。

代码

CPP
#include <bits/stdc++.h>
using namespace std;
__int128 a;
int main(){
	ios::sync_with_stdio(0);
	cin.tie(0);
	string s;
	cin>>s;
	for (int i=0;i<s.size();i++){//从最高位开始依次转换 
		if (s[i]!='-'){
			a*=10;
			a+=s[i]-48;//数字的ascii码从48开始 
		}
	}
	if(s[0]=='-'){//负数 
		a=-a;
	}
	if(a>=-2147483648&&a<=2147483647){//int的数据范围 
		cout<<"int\n";
	}
	if(a>=0&&a<=4294967295){//unsigned int的数据范围 
		cout<<"unsigned int\n";
	}
	if(a>=-9223372036854775808&&a<=9223372036854775807){//long long的数据范围 
		cout<<"long long\n";
	}
	if(a>=0&&a<=18446744073709551615){//unsigned long long的数据范围 
		cout<<"unsigned long long\n";
	}
	cout<<"string";
	return 0;
}

评论

1 条评论,欢迎与作者交流。

正在加载评论...