CodeForces 447-A. DZY Loves Hash
2014-07-30 14:11
267 查看
A. DZY Loves Hash
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
DZY has a hash table with p buckets, numbered from 0 to p - 1.
He wants to insert n numbers, in the order they are given, into the hash table. For the i-th
number xi, DZY
will put it into the bucket numbered h(xi),
where h(x) is the hash function. In this problem we will assume, that h(x) = x mod p.
Operation a mod b denotes taking a remainder after division a by b.
However, each bucket can contain no more than one element. If DZY wants to insert an number into a bucket which is already filled, we say a "conflict" happens. Suppose the first conflict happens right after the i-th
insertion, you should output i. If no conflict happens, just output -1.
Input
The first line contains two integers, p and n (2 ≤ p, n ≤ 300).
Then n lines follow. The i-th of them contains an
integer xi (0 ≤ xi ≤ 109).
Output
Output a single integer — the answer to the problem.
Sample test(s)
input
output
input
output
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
DZY has a hash table with p buckets, numbered from 0 to p - 1.
He wants to insert n numbers, in the order they are given, into the hash table. For the i-th
number xi, DZY
will put it into the bucket numbered h(xi),
where h(x) is the hash function. In this problem we will assume, that h(x) = x mod p.
Operation a mod b denotes taking a remainder after division a by b.
However, each bucket can contain no more than one element. If DZY wants to insert an number into a bucket which is already filled, we say a "conflict" happens. Suppose the first conflict happens right after the i-th
insertion, you should output i. If no conflict happens, just output -1.
Input
The first line contains two integers, p and n (2 ≤ p, n ≤ 300).
Then n lines follow. The i-th of them contains an
integer xi (0 ≤ xi ≤ 109).
Output
Output a single integer — the answer to the problem.
Sample test(s)
input
10 5 0 21 53 41 53
output
4
input
5 5
0
1
2
3
4
output
-1
#include<stdio.h> #include<iostream> #include<string.h> using namespace std; int main() { int a[310],num[310]; memset(num,0,sizeof(num)); int p,n; scanf("%d%d",&p,&n); for(int i = 0; i < n;i++) { scanf("%d",&a[i]); } int flag = 0; int ans = 0; for(int i = 0;i < n;i++) { if(num[a[i]%p] == 0) num[a[i]%p]++; else { flag = 1; ans = i+1; break; } } if(flag) printf("%d\n",ans); else printf("-1\n"); return 0; }
相关文章推荐
- Codeforces 447 C DZY Loves Sequences【DP】
- CodeForces 447-B. DZY Loves String
- Codeforces Round #254 (Div. 1) D. DZY Loves Strings hash 暴力
- CodeForces 446C DZY Loves Fibonacci Numbers(线段树+数论)
- 【Codeforces】-445C-DZY Loves Physics(几何,数学)
- Codeforces Round #FF (Div. 2)A. DZY Loves Hash
- CodeForces 446-B. DZY Loves Modification
- Codeforces 444C DZY Loves Colors(线段树)
- 【codeforces】-445A- DZY Loves Chessboard(思维)
- Codeforces Round #FF (Div. 2) Problem A DZY Loves Hash
- 【杂题】 codeforces 446B - DZY Loves Modification
- Codeforces Round #FF (Div. 2) 447A - DZY Loves Hash(模拟)
- codeforces 445E - DZY Loves Colors
- 【Codeforces】-DZY Loves Chemistry(并查集变形)
- 【线段树】 codeforces 444C DZY Loves Colors
- CodeForces 444C DZY Loves Colors
- Codeforces 444C DZY Loves Colors(线段树)
- Codeforces 445B——并查集或DFS——DZY Loves Chemistry
- CodeForces 444C - DZY Loves Colors(线段树)
- Codeforces】-445C-DZY Loves Physics