| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 654 人关注过本帖
标题:实在搞不懂哪里出了问题!!OJ网上交就是不让过
只看楼主 加入收藏
夜猫
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-10-5
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
实在搞不懂哪里出了问题!!OJ网上交就是不让过
题目描述

昊哥最近沉迷于网游中,他玩游戏有个毛病,就是花最少的钱,买到最多最好的装备!可最近有个问题难倒这位大神了……

网游药铺推出金创药优惠活动,并规定:用K个金创药空瓶可以换1瓶金创药!昊哥手下有N个兵,1瓶药水只能给1个兵喝。昊哥想找出如何能花最少的钱,让每个兵都能喝到1瓶药水
输入
首先输入一个整数T ( 0<T<100 ),代表T组数据。随后每组数据占一行,每行包含两个整数K、N ( 1<K<50,0<=N<=1000 ),K表示换1瓶金创药所需空瓶数,N表示兵的总数。
输出
每组数据输出一行,包含一个整数,代表最少需要买几瓶药水才能让每个兵都能喝到1瓶。
样例输入
2
2 10
10 100
样例输出
6
91
——————————_-------
以上是
程序代码:
我在OJ 网上的题目
以下是我的程序
#include <stdio.h>
int main()
{
    int K,N,T,i;
    scanf("%d",&T);
    int str[T];
    for(i=0;i<T;i++)
       {
          scanf("%d%d",&K,&N);
          {
              str[i]=(N*(K-1))/K+1;
          }
       }   
    for(i=0;i<T;i++)
       {
          printf("%d\n",str[i]);
       }
    system("pause");
    return 0;
}

哪里有错?帮我看看,谢谢各位大神
搜索更多相关主题的帖子: 金创药 玩游戏 网上 如何 网游 
2010-12-13 21:14
夜猫
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-10-5
收藏
得分:0 
各位大神,帮忙看看
2010-12-14 20:24
我不是傐守
Rank: 1
等 级:禁止发言
帖 子:4
专家分:0
注 册:2010-12-12
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2010-12-14 20:42
夜猫
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2010-10-5
收藏
得分:0 
公式没错,百度出来的
2010-12-14 21:01
yu_hua
Rank: 2
等 级:论坛游民
帖 子:222
专家分:95
注 册:2006-8-10
收藏
得分:0 
int str[T];
这样抽象的定义不可以哟
2010-12-14 21:06
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
收藏
得分:14 
这个是我给你写的程序(修改了一下),可能写的不好很好,参考一下吧,熟悉一下做oj题的一些输入与输出的格式规则!!!

程序代码:
# include <stdio.h>

int bottle[102] ;

int main()
{
    int t , k , n ;
    int i , j ;
    int emptybottle ;
    while(scanf("%d" , &t) != EOF)
    {
        i = 1 ;
        while(i <= t)
        {
            scanf("%d%d" , &k , &n) ;
            bottle[i] = k ;//肯定先买k个药瓶,给k个士兵喝了
            emptybottle = k ;//空瓶子数目就是k
            for(j = k + 1 ; j <= n ; j++)
            {
                if(emptybottle % k == 0)//如果空瓶子达到可以换药瓶子数量的话,则换一个药瓶子,换了一个药瓶之后有一个士兵喝了,这样就有一个空瓶子
                {
                    j++ ;//循环变量加1
                    emptybottle = 1 ;
                }
                bottle[i]++ ;//如果空瓶子的数目没有达到可以换药瓶子的数量,则买药瓶 。药瓶子数目加1
                emptybottle++ ;//此时空瓶子的数量也加1 ,因为买一个药瓶之后,一个士兵喝完,剩下了一个空瓶子
            }
            i++ ;
        }
        for(i = 1 ; i <= t ; i++)
            printf("%d\n" , bottle[i]) ;
    }
    return 0 ;
}



[ 本帖最后由 我菜119 于 2010-12-15 10:46 编辑 ]

愿用余生致力编程
2010-12-14 21:56
ququguoguo
Rank: 2
等 级:论坛游民
帖 子:73
专家分:90
注 册:2010-10-20
收藏
得分:0 
我是来找大神的
2010-12-14 22:23
Shawty
Rank: 1
等 级:新手上路
帖 子:19
专家分:7
注 册:2010-11-29
收藏
得分:0 
被while(scanf("")!=EOF)纠结了狠久。
2010-12-14 22:46
yono
Rank: 2
等 级:论坛游民
帖 子:6
专家分:20
注 册:2010-12-14
收藏
得分:6 
->int str[T];数组的声明有问题。
改成 int str[100];就OK了。
以下非公式计算,供参考。
----------------------------------------------
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>   
#include<string.h>   
        
void main()
{
    int n,k,t;
    int i=0;
    int a[100];
    int buy,last,free;
    memset(a,0,100*sizeof(int));

    printf("input the quantity of groups.\n");
    scanf("%d",&t);
    if(t<=0||t>=100)
    {
        printf("wrong number!\n");
        system("pause");
        return;
    }

    printf("input the rules of barter.\n");   
    for (i;i<t;i++)
    {
        scanf("%d %d",&k,&n);
        if(!(1<k&&k<50)||!(0<=n&&n<=1000))
        {
            a[i]=0;
            break;
        }
        if(k>=n)
            a[i]=n;
        else
        {
            last=n-k-1;
            free=1;
            for(buy=k;last>k;last--)
            {
                buy+=k;
                free++;
                if(free==k)
                {
                    last-=k+1;
                    free=0;
                }
                else
                    last-=k;
            }
            if(last<0)
                last=0;
            if(last+free>k)
                a[i]=buy+last-1;
            else
                a[i]=buy+last;
        }
    }
    i=0;
    for(i;i<t;i++)
    {
        if(a[i]==0)
            printf("invalid rules!\n");
        else
            printf("%d\n",a[i]);
    }
    system("pause");
}
2010-12-15 10:29
a343637412
Rank: 7Rank: 7Rank: 7
来 自:そ ら
等 级:黑侠
帖 子:357
专家分:620
注 册:2010-9-26
收藏
得分:0 



路过....
2010-12-15 13:23
快速回复:实在搞不懂哪里出了问题!!OJ网上交就是不让过
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019144 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved