【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)

WY33 计算糖果

链接:WY33 计算糖果

题目:

A,B,C三个人是好朋友,每个人手里都有一些糖果,我们不知道他们每个人手上具体有多少个糖果,但是我们知道以下的信息:
A - B, B - C, A + B, B + C. 这四个数值.每个字母代表每个人所拥有的糖果数.
现在需要通过这四个数值计算出每个人手里有多少个糖果,即A,B,C。这里保证最多只有一组整数A,B,C满足所有题设条件。

【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)_第1张图片

题目分析:

A,B,C是三个人手里的糖果数量,我们不知道A,B,C是多少?但是我们知道A - B, B - C, A + B, B + C的结果,这个结果题目是通过输入测试用例给我们的。所以本题本质是一个表达式求解问题。
【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)_第2张图片
【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)_第3张图片

代码实现:

package Day4;

import java.util.*;

public class Day4_1 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int a = scanner.nextInt();
        int b = scanner.nextInt();
        int c = scanner.nextInt();
        int d = scanner.nextInt();

        int A = (a+c)/2;
        int C = (d-b)/2;
        int B1 = (b+d)/2;
        int B2 = (c-a)/2;

        if (B1 != B2) {
            System.out.println("No");
        }else {
            System.out.println(A + " " + B2 + " " + C);
        }
    }
}

DD5 进制转换

链接:DD5 进制转换

题目:

给定一个十进制数M,以及需要转换的进制数N。将十进制数M转化为N进制数
【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)_第4张图片

题目分析:

【Java笔试强训】Day4(WY33 计算糖果、DD5 进制转换)_第5张图片

代码实现:

package Day4;

import java.util.Scanner;

public class Day4_2 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int m = scanner.nextInt();
        int n = scanner.nextInt();

        StringBuilder s = new StringBuilder();
        String table = "0123456789ABCDEF";
        boolean flg = false; //是否变过号

        if (m < 0) {
            m = -m;
            flg = true;
        }
        while (m != 0) {
            s .append(table.charAt(m % n));
            m = m / n;
        }
        if (flg) {
            s.append("-");
        }
        s.reverse();
        System.out.println(s);
    }
}

你可能感兴趣的:(笔试强训,1024程序员节,java)