java编程解小学生一年级竞赛题

抖音教学视频

目录

1、题目三角形加起来为10


大纲

1、题目三角形加起来为10

连接:小学一年级数学竞赛练习题3套,有点难度! 第16题

此方法不是最优解,穷举法,比较暴力解决

主要给大家演示如何用编程去解决我们的实际问题,

java 复制代码
/**
 * @ClassName TopicTest
 * @Author chuige
 * @create 2024/1/14 10:33
 */
public class TopicTest {

    public static void main(String[] args) {
        new TopicTest().topic16();
    }

    /*
     * @Author 吹老师
     * @Description // 解 小学生一年级 最难的竞赛题
     * @Date 10:34 2024/1/14
     * @Param []
     * @return void
     **/
    private void topic16() {
        int[] a = {1, 2, 3, 4, 5, 6};
        int[] result = new int[6];
        topic16(a, 0, result);
        System.out.println("执行完成");
    }

    private void topic16(int[] a, int count, int[] result) {
        if (count == 6) {
            printResult(result);
            return;
        }
        for (int i = 0; i < 6; i++) {
            result[count] = i + 1;
            topic16(a, count + 1, result);
        }
    }

    private void printResult(int[] result) {
        int reuslt1 = result[0] + result[1] + result[2];
        int reuslt2 = result[2] + result[3] + result[4];
        int reuslt3 = result[4] + result[5] + result[0];
        if (reuslt1 != 10 || reuslt2 != 10 || reuslt3 != 10) {
            return;
        }
        StringBuilder stringBuilderResult = new StringBuilder();
        stringBuilderResult.append("结果:");
        Set<Integer> repeatSet = new HashSet<>();
        for (int temp : result) {
            if (repeatSet.contains(temp)) {
                return;
            }
            repeatSet.add(temp);
            stringBuilderResult.append(" " + temp);
        }
        System.out.println("满足条件的结果:" + stringBuilderResult.toString());

//        满足条件的结果:结果: 1 4 5 2 3 6
//        满足条件的结果:结果: 1 6 3 2 5 4
//        满足条件的结果:结果: 3 2 5 4 1 6
//        满足条件的结果:结果: 3 6 1 4 5 2
//        满足条件的结果:结果: 5 2 3 6 1 4
//        满足条件的结果:结果: 5 4 1 6 3 2
    }
相关推荐
智慧物业老杨6 小时前
物业日常巡查的数智化重构:从“打卡式巡检“到“闭环式风控“
android·java·人工智能·系统架构·rxjava
晴天的雨.9926 小时前
【C++算法】和为s的两个数
开发语言·数据结构·c++·算法
IvanCodes12 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
步行cgn13 小时前
Spring c 命名空间注入详解
java·后端·spring
明月_清风13 小时前
Maven 到底是什么?一篇文章搞懂 Java 项目构建与依赖管理
java·后端·maven
aramae13 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
Rain的Java大神之路14 小时前
如何快速上传10G文件
java·spring boot·redis·后端·mysql·spring cloud·面试
荆棘鸟智能14 小时前
城市感知设备怎么统一接入?从多协议网关到设备模型的中间件架构设计
人工智能·算法·边缘计算
Wang's Blog14 小时前
Java 接入Redis: 通用命令与键管理
java·服务器·redis
Wang's Blog14 小时前
Java 接入Redis: 列表集合与有序集合操作命令
java·服务器·redis