链接:https://ac.nowcoder.com/acm/contest/551/B
来源:牛客网
第一行有一个整数 n ,表示卷子上题目的数量。
第二行有 26 个不同的英文小写字母(a - z),之间以空格分割,表示新的字典序。
对于每一道题,在一行输出其答案:如果s1<s2s1<s2 输出 "<";如果s1>s2s1>s2 输出 ">",否则输出 "="。
> < =
题解:该题就是比较字符串,但是得按照所给字典序来比较
#include<cstdio> #include<algorithm> #include<iostream> using namespace std; int main() { int n; char z[30]; char a[1010],b[1010]; cin>>n; for(int i=0;i<26;i++) cin>>z[i]; while(n--) { scanf("%s%s",a,b); int k=0,f=0; for(int i=0;a[i]!=‘\0‘||b[i]!=‘\0‘;i++) { if(a[i]!=b[i]) { for(int j=0;j<26;j++) { if(a[i]==z[j]) k=j; if(b[i]==z[j]) f=j; } break; } } if(k>f) cout<<">"<<endl; else if(k<f) cout<<"<"<<endl; else cout<<"="<<endl; } return 0; }
原文:https://www.cnblogs.com/ylrwj/p/10631246.html