随笔-10  评论-1  文章-0  trackbacks-0
LINK:
http://www.codeforces.com/contest/141/problem/A


题意是输入3个字符串,如果前两个字符串中的字符出现的次数和第三个字符串一样就输出yes,否则输出no


很简单的题目,c语言下用哈希,c++直接stl,python则更简单

c:
  1. #include<cstdio>

  2. int main()
  3. {
  4.  int A[256] = {0};
  5.  char S[256];
  6.   scanf("%s", S);
  7.  for(int i=0; S[i]; ++i) A[(int)S[i]]++;
  8.   scanf("%s", S);
  9.  for(int i=0; S[i]; ++i) A[(int)S[i]]++;
  10.   scanf("%s", S);
  11.  for(int i=0; S[i]; ++i) A[(int)S[i]]--;
  12.  int ok = 1;
  13.  for(int i=0; i<256; ++i)
  14.     if(A[i]!=0) ok=0;
  15.   puts(ok ? "YES" : "NO");
  16.  return 0;
  17. }

c++


  1. # include <iostream>
  2. # include <string>
  3. # include <algorithm>
  4. using namespace std;
  5. int main()
  6. {
  7.     string s, t, q;
  8.     cin >> s >> t >> q;
  9.     s += t;
  10.     sort(s.begin(), s.end());
  11.     sort(q.begin(), q.end());
  12.     if (s == q)
  13.        cout << "YES";
  14.     else
  15.         cout << "NO";
  16.     return 0;
  17. }

python

  1. x = (raw_input() + raw_input())
  2. y = raw_input()

  3. print "YES" if sorted(x) == sorted(y) else "NO"






posted on 2012-01-10 23:41 玉香 阅读(1406) 评论(0)  编辑 收藏 引用 所属分类: CodeForces

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理