计蒜课/UCloud 的安全秘钥(hash)

Posted ygeloutingyu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了计蒜课/UCloud 的安全秘钥(hash)相关的知识,希望对你有一定的参考价值。

题目链接:https://nanti.jisuanke.com/t/15768

 

题意:中文题诶~

 

思路:直接hash就好了,当时zz了没想到...

 

代码:

技术分享
 1 #include <iostream>
 2 #include <stdio.h>
 3 #define ll long long
 4 using namespace std;
 5 
 6 const int MAXN = 1e5;
 7 ll a[MAXN] = {1};
 8 ll w[MAXN];
 9 
10 int main(void){
11     ll n, m, k, x;
12     scanf("%lld", &n);
13     for(int i = 1; i <= n; i ++){
14         w[i] = w[i-1] * 233 + 17;
15     }
16     for(int i = 1; i <= n; i ++){
17         cin >> x;
18         a[i] = a[i-1] + w[x];
19     }
20     scanf("%lld", &m);
21     while(m--){
22         ll ans = 0, cnt = 0;
23         cin >> k;
24         for(int i = 0; i < k; i++){
25             cin >> x;
26             cnt += w[x];
27         }
28         for(int i=k; i<=n; i++){
29             if(a[i] - a[i-k] == cnt) ans ++;
30         }
31         printf("%lld\n", ans);
32     }
33     return 0;
34 }
View Code

 

以上是关于计蒜课/UCloud 的安全秘钥(hash)的主要内容,如果未能解决你的问题,请参考以下文章

计蒜客 UCloud 的安全秘钥(困难)(哈希)

2017 计蒜之道 初赛 第五场 UCloud 的安全秘钥(中等)

UCloud 的安全秘钥 (计蒜客初赛第五场)(待解决)

计蒜客-第五场初赛-第二题 UCloud 的安全秘钥(简单)

计蒜客第五场 UCloud 的安全秘钥(中等) (尺取游标法

2017 计蒜之道 初赛 第五场 B. UCloud 的安全秘钥(简单)