以下内容仅供参考和学习。
1.哈希函数
利用哈希算法统计每个字符串出现的个数。
#include<bits/stdc++.h>
using namespace std;
//在下面Begin和End之间补全代码
/*********** Begin ***********/
map<string,int>MAP;
int main()
{
int n;
cin>>n;
MAP.clear();
string x;
for(int i=0; i<n; i++)
{
cin>>x;
MAP[x]++;
}
map<string,int>::iterator it;
for(it=MAP.begin(); it!=MAP.end(); it++)
{
cout<<it->first<<' '<<it->second<<endl;
}
return 0;
}
/*********** End ***********/
2.数字签名
对给定的身份以及消息进行数字签名。
#include<bits/stdc++.h>
using namespace std;
int e,a,b,q,m;
//在下面Begin和End之间补全代码
/*********** Begin ***********/
int quick(int x,int y)
{
int ans=1;
while(y)
{
if(y&1)
ans=ans*x%q;
x=x*x%q;
y/=2;
}
return ans%q;
}
int main()
{
cin>>e>>a>>b>>q>>m;
int pk=a*e+b;
int sk=quick(pk,q-2);
int en=sk*m;
cout<<pk<<endl<<sk<<endl<<en<<endl;
return 0;
}
/*********** End ***********/
欢迎大家评论与交流!