bjfu1007振兴北林A坛

    xiaoxiao2026-04-23  8

    振兴北林A坛

    时间限制(C/C++):1000MS/2000MS          运行内存限制:65536KByte 总提交:744            测试通过:171

    描述

    众所周知,当前北林A坛不景气,自从几位学长“退役”以后,仍在A坛活跃的寥寥无几,众多著名高手或未知名高手都不重视ACM,或只将其作为加分的手段,偶尔参加几次月赛;或干脆避而远之,造成北林A坛一片凄惨的光景(有点夸张^_^)。为此,ben多次向Professor Wang提出振兴北林A坛的想法。Professor Wang和ben一致认为搭建北林自己的OJ系统是提升北林ACM影响力和竞赛水平的重要手段。可是搭建OJ需要解决许多问题,其中一个便是用户注册的问题。注册用户名是由字母、数字和下划线(_)组成,且开头字符必须是字母或下划线,中间不能有空格,字符数量不超过20个,而且系统中不能有重复的用户名。

    输入

    输入包含多组测试数据,每组测试数据首先包含一个正整数n(当n<=0时表示输入结束),接下来是n个字符串,表示输入的用户名。

    输出

    如果输入的用户名序列满足上述条件,请输出"Resonable!",否则请输出"UnResonable!"。假设每组输入前系统为空。每组输出占一行。

    样例输入

    3 libai dufu wangwei 2 1988 _young 3 _112358 ben ben

    样例输出

    Resonable! UnResonable! UnResonable!

    题目来源

    ben

    简单的C语言编程。

    AC代码:

    #include<stdio.h> #include<string.h> int main() { int n,i,l,j,k,m,f; char a[100][25]; while(scanf("%d",&n)!=EOF) { if(n<=0) break; f=0; getchar(); for(i=0;i<n;i++) gets(a[i]); for(j=0;j<n;j++) { l=strlen(a[j]); if(l>20) { f=1; break; } if(a[j][0]>='0'&&a[j][0]<='9') { f=1; break; } for(i=0;i<l;i++) { if(!((a[j][i]>='a'&&a[j][i]<='z')||(a[j][i]>='A'&&a[j][i]<='Z')||(a[j][i]>='0'&&a[j][i]<='9')||a[j][i]=='_')) { f=1; break; } } } for(m=0;m<n;m++) for(k=1;k<n;k++) if(strcmp(a[m],a[m+k])==0) f=1; if(f==1) printf("UnResonable!\n"); else printf("Resonable!\n"); } return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-1309128.html
    最新回复(0)