POJ 2159 Ancient Cipher

题意:被题意杀了……orz……那个替换根本就不是ASCII码加几……就是随机的换成另一个字符……

解法:只要统计每个字母的出现次数,然后把数组排序看相不相同就行了……

代码:

#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<string>
#include<string.h>
#include<math.h>
#include<limits.h>
#include<time.h>
#include<stdlib.h>
#include<map>
#include<queue>
#include<set>
#include<stack>
#include<vector>
#define LL long long

using namespace std;

int main()
{
    string s1, s2;
    while(cin >> s1 >> s2)
    {
        vector <int> v1, v2;
        for(int i = 0; i < 26; i++)
        {
            v1.push_back(0);
            v2.push_back(0);
        }
        for(int i = 0; i < s1.size(); i++)
        {
            v1[s1[i] - ‘A‘]++;
            v2[s2[i] - ‘A‘]++;
        }
        sort(v1.begin(), v1.end());
        sort(v2.begin(), v2.end());
        if(v1 == v2) puts("YES");
        else puts("NO");
    }
    return 0;
}

  

时间: 2024-10-22 23:40:57

POJ 2159 Ancient Cipher的相关文章

poj 2159 Ancient Cipher(水)

Ancient Cipher Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 30695   Accepted: 10023 Description Ancient Roman empire had a strong government system with various departments, including a secret service department. Important documents w

POJ 2159 Ancient Cipher 难度:0

题目链接:http://poj.org/problem?id=2159 #include <cstring> #include <cstdio> #include <cctype> char ch1[102]; char ch2[102]; int n1[102]; int n2[102]; int ch1n[26]; int ch2n[26]; int main(){ scanf("%s %s",ch2,ch1); int len=strlen(c

POJ - 2159 - Ancient Cipher = 水题

http://poj.org/problem?id=2159 题意:给一种加密方式:先打乱,然后把字母换掉.求s串可不可以是t串的密文. 发现就是这种"可以"的情况就是字母的频率图排序后相同. #include<algorithm> #include<cmath> #include<cstdio> #include<cstring> #include<iostream> #include<map> #include

Poj 2159 / OpenJudge 2159 Ancient Cipher

1.链接地址: http://poj.org/problem?id=2159 http://bailian.openjudge.cn/practice/2159 2.题目: Ancient Cipher Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 28064   Accepted: 9195 Description Ancient Roman empire had a strong government system

poj 2159 D - Ancient Cipher 文件加密

Ancient Cipher Description Ancient Roman empire had a strong government system with various departments, including a secret service department. Important documents were sent between provinces and the capital in encrypted form to prevent eavesdropping

uva--1339 - Ancient Cipher(模拟水体系列)

1339 - Ancient Cipher Ancient Roman empire had a strong government system with various departments, including a secret service department. Important documents were sent between provinces and the capital in encrypted form to prevent eavesdropping. The

UVa 1339 Ancient Cipher --- 水题

UVa 1339 题目大意:给定两个长度相同且不超过100个字符的字符串,判断能否把其中一个字符串重排后,然后对26个字母一一做一个映射,使得两个字符串相同 解题思路:字母可以重排,那么次序便不重要,可以分别统计两个字符串中的各个字母出现的次数,得到两个cnt[26]数组, 又由于可以进行映射,则可以直接对两个数组进行排序后判断是否相等(相当于原来相等的值的两个地方做映射) /* UVa 1339 Ancient Cipher --- 水题 */ #include <cstdio> #incl

UVa 1339 Ancient Cipher【排序】

/* 中文题目      古老的密码 中文翻译-大意  给你两个字符串,看你能不能将第一个字符变化位置(重排),变成和第二个字符串的26个字母一一对应. 解题思路:将两个字符串的各个字符的数量统计出来,如果各个字符串的数量都是一样的,那么就输出yes,否则输出no 难点详解:在统计每个字符出现的次数有点小难度 关键点:排序 解题人:lingnichong 解题时间:2014/08/26    00:36 解题体会:很好的一题 */ 1339 - Ancient Cipher Time limit

UVa1399.Ancient Cipher

题目链接:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=4085 13855995 1339 Ancient Cipher Accepted C++ 0.012 2014-07-09 12:35:33 Ancient Cipher Ancient Roman empire had a strong government system wit