离散题目2

来源:互联网 发布:手机版极简付款软件 编辑:程序博客网 时间:2024/06/18 06:15

Problem Description

DaYu是一个喜欢看电影的好孩子,他的电脑里有成千上万部电影。因为某些不可描述的原因,他把这些电影以互不相同的编号命名(编号是数字且范围在(0,1000000)之间)。因为电影实在太多,他记不住自己已经看过了哪些电影。现在他把他看电影的记录给你,请你帮他检查一下他有没有看重复的电影。如果没有,输出“true”,否则输出“false”。

Input

第一行输入组数T(T<1000),每组的第一行输入他看的电影数量n(0 < n < 1000000),第二行输入n个数字,分别是每一部电影的编号。

Output

对于每组数据,如果没有重复的,那么输出true,否则输出false。

Example Input

251 2 3 4 551 2 3 4 4

Example Output

truefalse
代码
#include<stdio.h>int main(){    int T,n,i,j,flag,a[1000010];    scanf("%d",&T);    while(T--)    {        flag = 1;       scanf("%d",&n);       for(i = 0;i<n;i++)        scanf("%d",&a[i]);       for(i = 1;i<n;i++)       {           for(j = 0;j<i;j++)           {               if(a[i]==a[j])               {                   flag = 0;                   break;               }           }           if(!flag)            break;       }       if(flag)        printf("true\n");       else printf("false\n");    }    return 0;}

原创粉丝点击