看题目,题目并没有要求需要用算法求一些东西,只是要求依照题意求出机器的执行操作。
所以,我们能知道,这道题其实是一道超大模拟、
虽然模拟也不简单
思路:
优先想到输出“ERR”,因为判断这个条件是最难的事情,所以,我们需要一个函数 check() 用于判断。
题目要求,需要格式一样,并且数字没有前导零、不超过最大值就可以了。
这里要求格式一样的话可以用一个字符串把每个字符求出来最后算格式。
要求不能有前导零的话我们可以先求出字符串的数位,再算出变成 int 后的数位
因为 int 变量自动忽略前导零。
不超过最大值只需要定义一个变量求出数量就可以了
我们的“ERR”就判断好了
具体函数如下:
接下来判断“FAIL”
我们发现它的判断条件,一个是前面没有这个地址,一个是前面有这个地址。
这样,我们就可以用函数表示之前有没有这个地址。
这里补充一个知识点
最后,如果前面都没有的话,就是输出“OK”
这样本次题目就全都做出来了
别告诉我你不会输入
代码如下:
这样就全都AC啦。