徐老师的文件格式
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
说明
NOIP(全国青少年信息学奥林匹克竞赛)自 1995 年开始举办,每年由中国计算机学会统一组织。选手在比赛中提交代码时,要按照以下格式进行提交:
根文件夹命名为准考证号 `BJ-01`,指的是选手的地区和考号。
接下来在文件夹内按照题目建立文件夹
例如第一道题的题目叫作 `task1`,则需要在 `BJ-01` 文件夹下创建一个 `task1` 的文件夹
并在该题目的文件夹里放入该题的代码文件,命名为 `task1.cpp`
现在已知考试共有 $4$ 道题目,你得到了一个选手提交的最终文件夹,现在你需要判定他的提交格式是否正确。
格式正确的判定标准:
1. 根目录是地区 + 考号,你可以认为根目录必须同时包含字母(大写或小写字母均可)和数字两种字符,且字母在前,数字在后。(`A2B` 这种字母与数字交替的情况也不符合要求,而 `BJ01`,`BJJJ0001` 都是符合要求的),且根目录**只能有一个**。
2. 第二级目录有 $4$ 个文件夹,分别对应每道题目。你可以认为题目名一定为纯字母。(上图中的 `task1 task2` 仅为示例,实际上题目名称不会出现 `1 2` 等数字)
3. 每一个题目文件夹中包含一个 `.cpp` 文件,即你可以认为所有选手都使用 `C++` 完成代码。`.cpp` 文件的名称必须和题目名称相同。
4. 本题中只需判断文件名是否正确,无需判断文件类型。即如果选手在 `task` 文件夹中放入了一个命名为 `task.cpp` 的文件夹,我们也认为他的格式是正确的。但假如 `task.cpp` 文件夹里面还有其他文件(即存在第四层目录),则格式错误。
输入格式
输入第一行包含一个正整数 $t$,表示 $t(1 \leq t \leq 100)$ 组数据。
每组数据首先给出一行一个正整数 $n(1 \leq n \leq 10)$,表示文件关系的数量。
接下来包含 $n$ 行,每行给出两个长度不超过 $20$ 的字符串 $A \ B$,代表 $B$ 是 $A$ 文件夹的子文件。保证每组数据给出的信息不会重复(即不会有同名文件出现在目录中的不同位置)且每次给出的字符串 $A$ 和 $B$ 不相同。字符串中可能包含大写字母,小写字母,数字以及 `- . ( )` 这四种特殊字符中的某几种。
性质 $1$:根目录只有一个且根目录的名称满足条件
性质 $2$:所有文件名均符合要求(只可能是第二级目录或根目录的数量出错)
性质 $3$:目录一定只有 $3$ 级
| 测试点编号 | 具有性质 |
| :---: | :---: |
| $1$ | $1,2,3$ |
| $2$ | $1,3$ |
| $3$ | $2$ |
| $4,5$ | 无特殊性质 |
输出格式
输出 $t$ 行,每行输出一个 `Yes` 或 `No` 表示文件格式是否符合标准。
样例
5
2
BJ01 task
task task.cpp
8
task task.cpp
zJ01 task
zJ01 apple
apple apple.cpp
zJ01 Banana
Banana Banana.cpp
zJ01 candy
candy candy.cpp
8
123 task
task task.cpp
123 plane
plane plane.cpp
123 banana
banana banana.cpp
123 candy
candy candy.cpp
8
GD01 task
task task.cpp
GD01 apple
apple banana.cpp
GD01 banana
banana apple.cpp
GD01 candy
candy candy.cpp
8
TJ01 task
task task.cpp
TJ01 apple
apple apple.cpp
TJ01 banana
banana banana.cpp
TJ01 candy
candy candy.cpp.cppNo
Yes
No
No
No