比赛 |
20100927 |
评测结果 |
AAAAAAAAAAAAAAAA |
题目名称 |
翻译玛雅著作 |
最终得分 |
100 |
用户昵称 |
Citron酱 |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2010-09-27 19:37:21 |
显示代码纯文本
#include <fstream>
#include <string>
#define I_F "writing.in"
#define O_F "writing.out"
using namespace std;
int s1[256],s2[256];
char s[3000000];
int n1,n2,ans;
void Input();
bool Pd();
void Search();
void Output();
int main()
{
Input();
Search();
Output();
}
void Input()
{
char t;
int i;
ifstream fin(I_F);
fin>>n1>>n2;
for (i=0; i<n1; i++)
{
fin>>t;
s1[(int)t]++;
}
for (i=0; i<n2; fin>>s[i++]);
fin.close();
}
bool Pd()
{
int i;
for (i=0; i<256; i++)
if (s1[i]!=s2[i])
return false;
return true;
}
void Search()
{
int i;
for (i=0; i<n1; i++)
s2[(int)s[i]]++;
if (Pd())
ans++;
for (; i<n2; i++)
{
s2[(int)s[i]]++;
s2[(int)s[i-n1]]--;
if (Pd())
ans++;
}
}
void Output()
{
ofstream fout(O_F);
fout<<ans<<endl;
fout.close();
}