蓝桥杯每日一题2023.11.30

题目描述

九数组分数 - 蓝桥云课 (lanqiao.cn)

题目分析

此题目实际上是使用dfs进行数字确定,每次循环中将当前数字与剩下的数字进行交换

eg.1与2、3、4、、、进行交换

2与3、4、、、进行交换

填空位置将其恢复原来位置即可,也就直接将其交换回去即可

cpp 复制代码
#include <stdio.h>
void test(int x[])
{
    int a = x[0]*1000 + x[1]*100 + x[2]*10 + x[3];
    int b = x[4]*10000 + x[5]*1000 + x[6]*100 + x[7]*10 + x[8];
    
    if(a*3==b) printf("%d/%d\n", a, b);
}
void f(int x[], int k)
{
    int i,t;
    if(k>=9){
        test(x);
        return;
    }
    
    for(i=k; i<9; i++){
        {t=x[k]; x[k]=x[i]; x[i]=t;}
        f(x,k+1);
        t=x[k]; x[k]=x[i]; x[i]=t;
    }
}
int main()
{
    int x[] = {1,2,3,4,5,6,7,8,9};
    f(x,0);    
    return 0;
}
相关推荐
骑着猪去兜风.24 分钟前
线段树(二)
数据结构·算法
fengfuyao9852 小时前
竞争性自适应重加权算法(CARS)的MATLAB实现
算法
散峰而望2 小时前
C++数组(二)(算法竞赛)
开发语言·c++·算法·github
leoufung2 小时前
LeetCode 92 反转链表 II 全流程详解
算法·leetcode·链表
wyhwust2 小时前
交换排序法&冒泡排序法& 选择排序法&插入排序的算法步骤
数据结构·算法·排序算法
利刃大大2 小时前
【动态规划:背包问题】完全平方数
c++·算法·动态规划·背包问题·完全背包
wyhwust3 小时前
数组----插入一个数到有序数列中
java·数据结构·算法
im_AMBER3 小时前
Leetcode 59 二分搜索
数据结构·笔记·学习·算法·leetcode
gihigo19983 小时前
基于MATLAB的IEEE 14节点系统牛顿-拉夫逊潮流算法实现
开发语言·算法·matlab
甄心爱学习4 小时前
数据挖掘-聚类方法
人工智能·算法·机器学习