想了六个小时了不知道怎么改了,求助
查看原帖
想了六个小时了不知道怎么改了,求助
1198866
yinY_楼主2024/4/1 16:08

public class p2196 {
	public static void main(String[] args) {
		Scanner inScanner=new Scanner(System.in);
		int n=inScanner.nextInt();
		int[] d=new int[30],dp=new int[30],num=new int[30];
		int[][] ct=new int[30][30];
		for (int i = 1; i <=n; i++) {
			d[i]=inScanner.nextInt();
		}
		for (int i = 1; i <n; i++) {
			for (int j = i+1; j <=n; j++) {
				ct[i][j]=inScanner.nextInt();
			}
		}
		int ans=0;
		for (int i = 1; i <=n; i++) {
			for (int j = 1; j <=n; j++) {
				if (ct[j][i]==1&&dp[j]>dp[i]) {
					dp[i]=dp[j];
					num[i]=j;
				}
			}
			dp[i]+=d[i];
			if (dp[i]>ans) {
				ans=dp[i];
			}
		}
		for (int i = 1; i <=n; i++) {
			if(num[i]!=0)
			System.out.print(num[i]+" ");
		}
		System.out.println();
		System.out.println(ans);
	}

}
2024/4/1 16:08
加载中...