CodeChef - 厨师和幸运数字:为什么没有打印输出?

时间:2015-08-02 11:27:53

标签: java runtime-error

CodeChef - Chef and Lucky Number (DOUBL)

我的程序在ideone上成功运行但没有打印任何内容。当我在CodeChef上提交我的代码时,会显示错误。 WA错误意味着错误答案。

以下是代码:

import java.io.*;
class doubl
{
    public static void main(String args[])throws IOException
    {
        BufferedReader obj = new BufferedReader(new InputStreamReader(System.in));
        int c = 0;
        int T = Integer.parseInt(obj.readLine());
        if (T>=1 && T<=1000)
        {
            while (T>0)
            {
                int N = Integer.parseInt(obj.readLine());
                if (N>=1 && N<=1000000)
                {
                    for(int i = 2; i<N; i++)
                    {
                        if(N%i == 0)
                        {
                            c++;
                        }
                    }
                    if(c==1)
                    {
                        if(N%2 == 0)
                        {
                            System.out.println("LUCKY NUMBER");
                        }
                        else
                        {
                            System.out.println("Sorry");
                        }
                    }

                }
                T--;
            }
        }
    }
}

1 个答案:

答案 0 :(得分:2)

Codechef上的这个问题与测试数据存在问题。这就是为什么那里没有成功提交的原因。

问题陈述说:

  

先生。厨师已被给予N号。他倾向于将他得到的任何东西加倍。所以现在他已经得到了N号和他将数字N乘以2 。现在厨师很迷信。他相信一些被称为幸运数字的东西。 他的幸运数字被定义为任何数字,其中   当乘以2时,除了1,2和N之外没有其他因素。如果数字很幸运,你只需要打印“LUCKY NUMBER”。如果号码不是幸运号码,请打印“抱歉”。

如果您注意到粗线,则表示数字N首先乘以2.因此它变为2N。现在它又说了乘数,即 2N除了1,2和N之外没有其他因素。但是2N本身就是一个因素。所以没有幸运数字。所以问题设置不当。希望这会有所帮助。

P.S。 - 现在他们也提出了这个说明。

  

注意:由于测试数据中的某些问题,我们暂时停止了提交。