fork download
  1. #include <iostream>
  2. #include <cstdio>
  3. #include <cstring>
  4. using namespace std;
  5.  
  6. int main() {
  7. int n, q, dot, index, flag;
  8. char s[105][55], e[105][55], a[55], b[55], tmp[55];
  9. scanf("%d%d", &n, &q);
  10. for(int i=0; i<n; i++) scanf("%s%s", s[i], e[i]);
  11. while(q--) {
  12. memset(a, 0, sizeof(a));
  13. memset(b, 0, sizeof(b));
  14. memset(tmp, 0, sizeof(tmp));
  15. dot=0;
  16. flag=0;
  17. index=0;
  18. scanf("%s", a);
  19. for(int i=0; i<strlen(a); i++) {
  20. if(a[strlen(a)-1-i]=='.') {
  21. dot=1;
  22. break;
  23. }
  24. tmp[i]=a[strlen(a)-1-i];
  25. }
  26. if(dot) {
  27. for(int i=0; i<strlen(tmp); i++) {
  28. b[i]=tmp[strlen(tmp)-1-i];
  29. }
  30. for(int i=0; i<n; i++) {
  31. if(strcmp(b, s[i])==0) {
  32. flag=1;
  33. index=i;
  34. break;
  35. }
  36. }
  37. if(flag) printf("%s\n", e[index]);
  38. else printf("unknown\n");
  39. }
  40. else printf("unknown\n");
  41. }
  42. return 0;
  43. }
Success #stdin #stdout 0s 3300KB
stdin
5 6
html text/html
htm text/html
png image/png
svg image/svg+xml
txt text/plain
index.html
this.file.has.lots.of.dots.txt
nodotsatall
virus.exe
dont.let.the.png.fool.you
case.matters.TXT
stdout
text/html
text/plain
unknown
unknown
unknown
unknown