社区讨论

85分,求调

P12681 【MX-J15-T1】叉叉学习数据类型参与者 2已保存回复 5

讨论操作

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

当前回复
5 条
当前快照
1 份
快照标识符
@mhj0oi1v
此快照首次捕获于
2025/11/03 18:48
4 个月前
此快照最后确认于
2025/11/03 18:48
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
string sn;

signed main(){
	
	cin>>sn;
	
	if(sn[0]=='-'){
		sn.erase(0,1);
		int n=sn.size()+1;
		if(n<10){
			cout<<"int"<<endl;
			cout<<"long long"<<endl;		
		}
		else if(n==10 && sn<="2147483648"){
			cout<<"int"<<endl;
			cout<<"long long"<<endl;
		}
		else if(n>10 && n<19){
			cout<<"long long"<<endl;
		}
		else if(n==19 && sn<="9223372036854775808"){
			cout<<"long long"<<endl;
		}
		
	}
	else{
		int n=sn.size();
		if(n<10){
			cout<<"int"<<endl;
			cout<<"unsigned int"<<endl;
			cout<<"long long"<<endl;
			cout<<"unsigned long long"<<endl;	
		}
		if(n==10){
			if(sn<="2147483647"){
				cout<<"int"<<endl;
				cout<<"unsigned int"<<endl;
				cout<<"long long"<<endl;
				cout<<"unsigned long long"<<endl;
			}
			else if(sn<="4294967295"){
				cout<<"unsigned int"<<endl;
				cout<<"long long"<<endl;
				cout<<"unsigned long long"<<endl;
			}
		}
		if(n>10 && n<19){
			cout<<"long long"<<endl;
			cout<<"unsigned long long"<<endl;
		}
		else if(n==19 && sn<="9223372036854775807"){
			cout<<"long long"<<endl;
			cout<<"unsigned long long"<<endl;
		}
		else if(n==20 && sn<="18446744073709551615"){
			cout<<"unsigned long long"<<endl;
		}
		
	}
	cout<<"string"<<endl;
	
//9223372036854775807    18446744073709551615
//2147483647  //4294967295 //
//
//-2147483648
//-9223372036854775808
	return 0;
}

回复

5 条回复,欢迎继续交流。

正在加载回复...