【字符串+简单哈希映射】HDU-1144 Prerequisites?
程序员文章站
2022-04-06 13:59:40
...
注解
1、重在理解题意,其实就是简单的字符串处理。要学习K门课程,总共有m类课程,每类课程都有学习的最低门数要求。问学习的这K门课程,能否满足所有类的最低课程门数要求?能就输出yes,不能就输出no。
2、简单字符串处理。要用字符串,而不能用数字存课程编号。然后用简单的字符串比较函数compare,一一比较就可以了。
代码
#include <iostream>
using namespace std;
int main() {
int k;
cin>>k;
while(k){
int m;
cin>>m;
string selCour[k];
for(int i=0; i<k; i++){
cin>>selCour[i];
}
int total = 0;
for(int i=0; i<m; i++){
int cnt = 0;
int c;
int r;
cin>>c;
cin>>r;
string sameCatCour[c];
for(int j=0; j<c; j++){
cin>>sameCatCour[j];
for(int s=0; s<k; s++){
if(selCour[s].compare(sameCatCour[j])==0){
cnt++;
}
}
}
if(cnt>=r){
total++;
}
}
if(total==m){
cout<<"yes"<<endl;
}
else{
cout<<"no"<<endl;
}
cin>>k;
}
return 0;
}
结果
上一篇: php如何判断用户在线还是离线
下一篇: 必须掌握的CSS三种样式及其优先级顺序