算法--构造

一、构造C的歪

小歪有两个整数 a 和 b ,他想找到这样一个整数 c ,使得这三个整数在经过排序后能成为一个等差数列。

输入描述:在一行上输入两个整数 a,b 代表已有的数字。

输出描述:在一行上输出一个整数代表你所找到的第三个数字。

复制代码
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int a = in.nextInt();
        int b = in.nextInt();
        int dif = Math.abs(a - b);
        int max = a > b ? a : b;
        int c = max + dif;
        System.out.println(c);
    }
}

运行结果

二、构造数独

旺仔哥哥是一位数独 爱好者。在本题中,数独被定义为一个 n×n的整数矩阵 B,其中所有元素均为非负整数,并满足:

∙∙矩阵 B 的第 i行所有元素之和等于 k;

∙∙矩阵 B的第 j 列所有元素之和也等于 k。

给定正整数 n 与 k,旺仔哥哥想构造任意一个符合上述条件的数独。请你帮助他完成这一目标;如果不存在这样的矩阵,请你指出无解。

【名词解释】

∙∙数独:数独指的是一个满足 "各行和各列和均为同一个整数 k" 条件的 n×n非负整数矩阵。

输入描述:

在一行上输入两个整数 n,k,分别表示矩阵的阶数和每行(列)元素之和。

输出描述:

输出 n 行,每行 n个整数,表示构造出的矩阵。行内元素以单个空格分隔。保证所有元素都是非负整数,并且矩阵满足题目要求。

如果不存在满足条件的矩阵,只需输出一行一个整数 −1。

复制代码
import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int k = in.nextInt();
        int[][] matrix = new int[n][n];
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                if (j == i) matrix[i][j] = k;
                else matrix[i][j] = 0;
            }
        }
        for (int[] arr : matrix) {
            for (int a : arr) {
                System.out.print(a + " ");
            }
            System.out.println();
        }
    }
}

运行结果

相关推荐
SL_staff1 小时前
制造业订单交付崩盘?用四层协同框架重建交付可信度(技术实践)
java·产品·全栈
其实防守也摸鱼1 小时前
信创安全竞赛知识总结与题库
大数据·网络·人工智能·算法·安全·php
SL_staff2 小时前
打破风控迭代死循环:用决策编排重构业务与技术协作链路
java·产品·全栈
Mikko72 小时前
Redis 连接数满了服务端有错误信息吗?连接数不增加却命令超时?6.2 实测连接池、超时与大 key 怎么判定
java·spring boot·redis·后端
.Bryce.2 小时前
从零到一开发技术名词大全:从需求分析到 AI Agent 工程
java·网络·人工智能·agent·需求分析·agent评测
小超人诞生日记2 小时前
C++ 智能指针的使用及其原理详解
c++·算法
SL_staff3 小时前
JVS-APS的7个刚性约束设计:从无限产能幻觉到可执行排产的工程实践
java·spring cloud·全栈
代码山河4 小时前
基本类型转换:自动类型转换与强制类型转换
java·学习·架构·教程·面向对象·项目