1 条题解
-
0
#include <bits/stdc++.h> using namespace std; string a; int n; //找到字符串中最大的数字 int zfm(string s) { int ma = 0,t; for(int i = 0; i < s.size();i++) { //将字符转化为数字 字母字符 A - 10 //数字字符保持原来大小 1 - 1 if(isalpha(s[i]) )t = s[i] -55; else t = s[i] - 48; ma = max(ma,t); } return ma; } //根据最大字符来判断进制 void pd(int x) { //n进制的数字会小于n 10进制 内所有数字小于10 if(x > 15)cout<<"0 0 0 0"<<endl; else if(x >= 10 )cout<<"0 0 0 1"<<endl;//比10进制更大的进制 16 else if(x >= 8 )cout<<"0 0 1 1"<<endl;//比8进制更大的进制 10 16 else if(x >= 2 )cout<<"0 1 1 1"<<endl;//比2进制更大的进制8 10 16 else cout<<"1 1 1 1"<<endl;//比2小出现可以是所有进制 } int main() { cin>>n; while(n--) { cin>>a; pd(zfm(a)); } }
信息
- ID
- 4884
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 12
- 已通过
- 6
- 上传者