Problem Solving report POJ2769 reduced ID Numbers
DescriptionT. Chur teaches various groups of students at university U. Every u-student has a unique student identification number (SIN). A SIN S is an integer in the range 0≤s≤maxsin with Maxsin = 10 6-1. T. Chur finds this range of SINs too large for identification within her groups. For each group, she wants to find the smallest positive integer m, such this within the group all SINs reduced modulo m ar E unique.
Input
On the first line of the input was a single positive integer N, telling the number of the test cases (groups) to follow. Each case starts with one line containing the integer G (1≤g≤300): The number of students in the group. The following G lines each contain one SIN. The SINs within a group is distinct, though not necessarily sorted.
Output
For each test case, the output one line containing the smallest modulus m, such this all SINs reduced modulo m is distinct.
Sample Input
211248663124866111111987651
Sample Output
18
Topic: Given some numbers not exceeding 1e6, let you find a minimum number of k, so that the number given is not any two number of K congruence.
Analysis: The idea of solving problems is a very simple experiment method. Try each number directly from 1 to see if there is any congruence, if you find the same remainder, break until a suitable number is found. But there is a problem in C + + on the time-out but on the g++ AC, do not know where the mystery, ask the big God to mention points.
On the code:
#include <iostream> #include <algorithm> #include <cmath> #include <map> #include <cstring >using namespace Std;const int maxn = 1e5+10;const int MAXM = 1e6 + 10;int stu[maxn];int m[maxn];int main () {int Kase;ci N >> kase;while (kase--) {//memset (mod, 0, sizeof mod), int n;cin >> n;for (int i = 1; I <= n; i++) cin >&G T Stu[i];bool Flag;int i;for (i = 1; i++) {memset (m, 0, sizeof m); flag = true;for (int j = 1; J <= N; j + +) {if (M[stu[j]% I] = = 1) {flag = False;break;} ELSEM[STU[J]% i] = 1;} if (flag) break;} cout << i << Endl;} return 0;}
Well, the congruence equation begins.
Problem solving report POJ2769 reduced ID Numbers