1 条题解

  • 0
    @ 2024-8-8 21:49:06

    这个题我们可以用一个map来做。首先定义一个map的容器。把每一个字符串和对应的数字都输入进去。接下来我们先输入6个字符串,然后按照顺序把它们的平方%100,然后再定义一个数组,把算出来的这些数排序之后加入到数组里面。最后先输出数组的第一项,然后在一次输入后面的结果,注意要判断是不是要增加前导0。 ###上AC代码!###

    #include<bits/stdc++.h>
    using namespace std;
    map<string,int>q;
    const int mx=66;
    int top;
    int st[mx];
    string s;
    int main(){
        q["one"]=1;
    	q["two"]=2;
    	q["three"]=3;
    	q["four"]=4;
    	q["five"]=5;
    	q["six"]=6;
    	q["seven"]=7;
    	q["eight"]=8;
    	q["nine"]=9;
    	q["ten"]=10; 
        q["eleven"]=11;
    	q["twelve"]=12;
    	q["thirteen"]=13;
    	q["fourteen"]=14;
    	q["fifteen"]=15;
    	q["sixteen"]=16;
    	q["seventeen"]=17;
    	q["eighteen"]=18;
    	q["nineteen"]=19;
    	q["twenty"]=20;
        q["a"]=1;
    	q["both"]=2;
    	q["another"]=1;
    	q["first"]=1;
    	q["second"]=2;
    	q["third"]=3;
        for(int i=1;i<=6;i++){
        	cin>>s;
        	if(q[s]){
        		int k=q[s]*q[s]%100;
        		if(k==0)continue;
        		st[++top]=k;
    		}
    	}
    	sort(st+1,st+top+1);
    	cout<<st[1];
    	for(int i=2;i<=top;i++){
    		if(st[i]<10)cout<<0;
    		cout<<st[i];
    	}
    	return 0;
    }
    
    • 1

    信息

    ID
    744
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    25
    已通过
    10
    上传者