c语言问题,一直wrong

题目
ffgg现在在玩一款军事战略类游戏,作为一个精打细算的高端玩家,他希望能够最大化利益,每场战斗能够投入恰到好处的兵力,现在他有数门高射炮,每门高射炮射中敌人的概率是n,所有高射炮独立同时射击,如果要以m以上的概率射中敌人,那么他至少需要多少门高射炮。

输入

输入数据有多组,以EOF结束。

每组数据占一行,包括两个正数n,m,代表含义见描述。(0

输出

对于每组数据输出至少需要多少门高射炮,占一行,若无法满足要求,输出-1。

样例输入

0.3 0.99

样例输出

13
以下是我的答案,但是wa了求大能康康

#include
int main()
{
double n,m,t,o;
int i;
while(scanf("%lf %lf",&n,&m)!=EOF)
{

    if(n<1&&m>0&&m<1)
    {
        t=1-m;
        o=1;
        for(i=1;i<10000;i++)
        {
            o=o*(1-n);
            if(o"%d\n",i);
    }
    else if(n==1&&m==1)
    {
        printf("1\n");
    }
    else
    printf("-1\n");
}
return 0;

}