weixin_42501999 2013-03-10 18:27
浏览 225
已采纳

几个java的error,找来找去也不觉得是个error,error信息我用注释标出来了,共三行

[code="java"]
import java.util.Scanner;
import java.math.*;
public class Main{
final static int MAXN = 10010;
final static int MAXV = 4;
static int[] value = new int [MAXV];
static int[] vol = new int [MAXV];
static int[] dp = new int [MAXN];[color=red]//Syntax error on token ";", { expected after this token[/color]
value[1]=vol[1]=150;
value[2]=vol[2]=200;
value[3]=vol[3]=350;
public static void main(String[] args){[color=red]//Syntax error on token ")", ; expected[/color]
Scanner in = new Scanner(System.in);
while (in.hasNextInt()) {
int t = in.nextInt();
while ((t--) > 0) {
int n = in.nextInt();
for (int i = 0; i <= n; i++) {
dp[i] = 0;
}
for (int i = 1; i <= MAXV-1; i++) {
for (int j = vol[i]; j <= n;j++) {
dp[j] = Math.max(dp[j], dp[j-vol[i]]+value[i]);
}

}
System.out.println(n-dp[n]);
}
}
}
}[color=red]//Syntax error, insert "}" to complete ClassBody[/color]
[/code]

  • 写回答

1条回答 默认 最新

  • weixin_42397707 2013-03-10 19:14
    关注

    value[1]=vol[1]=150;

    value[2]=vol[2]=200;

    value[3]=vol[3]=350;

    这一段赋值放在方法内,或者用一个static块;
    最后多了一个大括号;
    [code="java"]
    import java.util.Scanner;
    import java.math.*;
    public class Main{
    final static int MAXN = 10010;
    final static int MAXV = 4;
    static int[] value = new int [MAXV];
    static int[] vol = new int [MAXV];
    static int[] dp = new int[MAXN];//Syntax error on token ";", { expected after this token[/color]

        public static void main(String[] args){//Syntax error on token ")", ; expected[/color]
            value[1]=vol[1]=150;
            value[2]=vol[2]=200;
            value[3]=vol[3]=350;
            Scanner in = new Scanner(System.in);
            while (in.hasNextInt()) { 
                int t = in.nextInt();
                while ((t--) > 0) {
                    int n = in.nextInt();
                    for (int i = 0; i <= n; i++) {
                        dp[i] = 0;
                    }
                    for (int i = 1; i <= MAXV-1; i++) {
                        for (int j = vol[i]; j <= n;j++) {
                            dp[j] = Math.max(dp[j], dp[j-vol[i]]+value[i]);
                        }                   
                    }
                    System.out.println(n-dp[n]);
                }
            }
        }
    }//Syntax error, insert "}" to complete ClassBody[/color]
    

    [/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)