This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <stdio.h>
#include <stdlib.h>
typedef struct _hash {
int val;
struct _hash *next;
} hash;
hash *hashtable[1415]; // LOL, initial value is 0! initial size is sizeof(void *) * 1415!
int main() {
int N, b;
scanf("%d", &N);
int i;
int n = 0;
char is_lower_than_N = 1;
for(i = 0; i < N; i++) {
if(is_lower_than_N) { scanf("%d", &b); if(i == N - 1) { scanf("%d", &N); is_lower_than_N = 0; } }
else b = n;
hash **h = &hashtable[b % 1415];
if(!*h) { n++; *h=(hash *)malloc(sizeof(hash)); (*h)->val = b; (*h)->next = 0; } // gee, need to initialize.
else {
hash *cur_h = *h;
char found = 0;
while(cur_h) {
if(cur_h->val == b) {
found = 1;
break;
}
cur_h = cur_h->next;
}
if(!found) n++;
}
}
printf("%d", b);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |