package com.algorithm;
import java.util.ArrayList;
import java.util.List;
public class PC3 {
/**
* AAA AAB AAC ABA ABB ABC ACA ACB ACC
* BAA BAB BAC BBA BBB BBC BCA BCB BCC
* CAA CAB CAC CBA CBB CBC CCA CCB CCC
* @param args
*/
public static void main(String[] args) {
String [] arr = {"A","B","C"};
pc3(arr,3);
}
/**
* 功能:三位数使用三进制进行全排列
* @param arr
* @param num
* @return
*/
public static List<String> pc3(String[] arr,int num){
List<String> list = new ArrayList<String>();
int g = 0;
for(int i = 0; i < (int) Math.pow(num, arr.length);i++){
String word = dtob3(g) + "";
//补零
while(word.length()<num){
word = "0" + word;
}
int count = num;
while(count>0){
word = word.replaceAll((count-1)+"", arr[count-1]);
count--;
}
System.out.println(word);
list.add(word);
g++;
}
System.out.println("total:"+g);
return list;
}
/**
* 功能:十进制整数转三进制字符串的递归
* @param n
* @return
*/
public static String dtob3(int n) {
if (n == 0 || n == 1|| n == 2) {
return Integer.toString(n,3);
} else {
return dtob3(n / 3) + Integer.toString(n % 3);
}
}
}
相关推荐
YOLO26算法皮革表面缺陷检测+训练好的模型+124张数据集+pyqt可视化界面.zip
附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[颜色(color), 切(cut), 折叠(fold), 胶水(glue), 好的(good), 戳(poke)] 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 68 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.7582** mAP50-95 | 0.4306 Precision | 0.6226 Recall | 0.6520 train/box_loss | 0.8731 train/cls_loss | 2.3543 val/box_loss | 1.3709 val/cls_loss | 3.9767 【训练过程分析】 从一开始的配置就定下了基调,训练配置包括了 yolo26n 模型、100 个 epoch,学习率初始设为 0.01,输入尺寸定为 640x640,批次大小为 24。这组配置在开始阶段表现得不错,模型刚开始训练时的 loss 降低得很快,这表明模型能够迅速从数据中吸收信息。但到了中后期,loss 曲线变得愈发平缓,从第 50 个 epoch 开始,即使我增加了学习率衰减的频率,仍然感到曲线在挣扎,像是陷入了平台期。这期间模型的收敛节奏明显减缓,似乎有些“停滞不前”的迹象。到了最后,模型确实收敛了,但在第 68 个 epoch 时 mAP50 获得了 0.7582 的值,这是一个不错的成绩,但与理想值相比仍有提升空间。... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。
巧用三进制解决天平称重问题
对于要称重的数,先将其转换为三进制,然后从右往左处理每一位。如果遇到 2,就将其变为 1,并在下一位进位(如果下一位是 0 则直接加 1,如果是 1 则继续进位处理);如果遇到 3(可能是进位导致),则在当前位插入 0,并在更高位进位(如果数组还有更高位就在下一位加 1,否则在结果列表中插入 1);如果是 0 或 1,则直接转换为数字加入结果列表。最后将处理后的特殊三进制表示恢复为十进制,并按照要求输出砝码组合方案。通过这道天平称重问题,我们深入了解了如何巧用三进制来解决实际问题。
GD32F303串口DMA发送数据避坑指南:为什么你的发送函数会卡住?
本文深入解析GD32F303单片机串口DMA发送数据时常见的卡死问题,提供详细的避坑指南。从DMA传输完成中断时序、发送状态管理到双通道DMA的特别注意事项,全面剖析问题根源并给出解决方案,帮助开发者构建健壮的DMA发送机制。
趣闻一则:Fermi实验室的神秘密码
去年5月5日,芝加哥附近的一个全球知名的物理实验室——Fermi国立加速器实验室——收到了一封神秘的来信。收信人只是简单的一个Fermilab,信件上没有留下寄信人地址。信纸上是一些短竖线、数字和怪异的符号。实验室里的所有人都不知道这封信是怎么回事。这究竟是一个玩笑,还是一个恐吓,或者暗示着一个革命性的物理理论? 不管他是什么玩意儿,第一个读到信件的人Judy Jac
麒麟V10服务器多硬盘安装与分区实战:告别自动分区,手动分配/boot、swap和/根目录
本文详细介绍了麒麟V10服务器在多硬盘环境下的手动分区策略,包括/boot、swap和/根目录的优化分配方案。通过SSD与HDD混合存储架构的合理规划,提升系统性能和运维效率,适用于企业级定制化系统部署需求。
用python自动复制粘贴excel表里某一列的数据到另一个表中
昨天接到人事小姐姐求助减轻复制粘贴的重复工作量,分享一下代码 半路新手上路 耶 把 2.xlsx 表里的第二列 的数据复制粘贴到 test.xlsx的第一列 python3.6.2 from openpyxl import Workbook from openpyxl import load_workbook from openpyxl.writer.excel import Exc...
三进制计算机_数学糖果S10:N进制
不同进制各有各的特点:二进制更为基础;十进制匹配人体手指数量;十二进制之基数12所含因数多;十六进制之基数16易被多次二分;六十进制结合了五进制与十二进制。世界可能是由概率控制的,现实世界中十进制被选中,计算机世界中二进制被选中。- - - - - - - N 进 制 简 介 - - - - - - -除十进制、二进制外,其他进制在历史中存在过或在当下仍被使用。一些“N”进制的简单介绍...
ADRV9026初始化避坑指南:手把手调试PostMcsInit常见故障
本文详细解析了ADRV9026多片同步初始化过程中的PostMcsInit常见故障,包括时钟校准失败、JESD链路建立问题和ARM核通信异常等。通过实际项目经验,提供了硬件检查清单、软件配置要点和分层诊断方法,帮助工程师快速定位和解决问题,提升系统稳定性。
有趣的三位数(全排列)
题目描述: 有这样一组数,每组由三个三位数组成,并且这三个数中1~9有且仅有一次,更特殊的是这三个数中,两个较小的数相加等于另外一个数(如124 659 783)。 你的任务就是查找出所有满足上述条件的组(以组出现,并且按照升序排列(每组之间以按首元素升序。对于其中的一组,三个数也按照升序排列))。 无输入 思路: 题目要求按升序排列,故而可想到全排列解决。 需注意:三个三位数也按照升序排列,则...
基于cat12搞定SBM的ROI的统计分析——vertex水平和ROI水平的双样本T检验
前言 一、Atlas皮层图谱介绍 二、SBM分析——主要以皮层四种常用指标中的厚度(thickness)和沟深(depth)为主
大学生作业:80C51存储器数据传输实验:基本指令和数据传送
大学生作业:80C51存储器数据传输实验,报价 200 文章目录实验一、80C51存储器数据传输实验实验目的:实验内容一:基本指令实验内容二:数据传送 实验一、80C51存储器数据传输实验 实验目的: 熟悉软件的集成开发环境 掌握单片机软件设计流程,掌握存储器结构及各窗口之间的联系 掌握内部数据存储器、外部数据存储器的数据传送特点和应用; 实验内容一:基本指令 用三种方法实现将累加器A内容改为20H ORG 0000H LJMP MAIN ORG 0030H MAIN: ;方法一使用寄
密钥密码学(二)
总共有 12 种可能的链接模式。链接向量可以来自三个来源之一:明文、内部阶段或当前块的密文。链接向量可以与四个目标之一结合使用:密钥、明文、内部阶段或下一个块的密文。除了这些选择之外,链向量可以每次都新生成,也可以与前一个分组的链向量合并。链向量可以原样使用,也可以在与目标合并之前加密。链接可以作用于连续的分组,也可以滞后。有很多很多选择。如果一个块密码遵循所有这些规则,实际上是无法破解的:它具有足够大的块大小。当前标准为 16 个字符或 128 位。它具有足够大的密钥。
3D Slicer学习记录(4)-PLUSapp连接双目相机Intel Realsense
plusapp是基于openIGTLink协议的免费的开源库和应用程序API接口,用于数据采集、预处理、校准和实时流成像、位置跟踪和其他传感器数据。这里以intel realsense双目相机为例详细的演示整个图像流导入到3D Slicer的流程。
三进制计算机基本原理,三进制(三进制计算机)
如题,越详细越好!最好再举个例子!十进制转任何进制都是采用整数除n取余倒序排列,小数乘n取整顺序排列的方法。比如 32.12 转 三进制 整数部分:32除以3商10余210除以3商3余13除以3商1余01除以3商.十进制数换三进制短除三,三进制换十进制从个为数前每位*3的0,1,2. .次方,然后所有位乘完后相加总值!三进制是以3为底数的进位制,三进制数有0、1、2三个数码,逢三进一。在计算机发展...
基于STM32F1XX 、HAL库的LTR-303ALS-01 环境光传感器驱动应用C语言程序设计
printf("制造商ID: 0x%02X\r\n", LTR303_ReadManufacID());printf("器件ID: 0x%02X\r\n", LTR303_ReadPartID());LTR-303ALS-01是一款数字环境光传感器(ALS),由Lite-On公司生产。printf("LTR-303ALS初始化失败!printf("LTR-303ALS初始化成功!printf("数据无效\r\n");* @param mode: 0-待机, 1-激活。
怀旧版电脑GBC模拟器
再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。
二进制与三进制的那些趣题
<br /><br />先来思考几个问题,并不难,各位大牛应能秒杀:<br /> <br />1. 小明是个卖苹果的,小红一次在小明那买N(N<1024)个苹果。小明每次都要数N个苹果给小红,唉,太麻烦了。于是小明想出了一种方法:他把苹果分在10个袋子中,则无论小红来买多少个苹果,则他都可以整袋整袋的拿给小红。问怎样分配苹果到各个袋子?<br /> <br />2. 有16种溶液,其中有且只有一种是有毒的,这种有毒的溶液与另一种试剂A混合会变色,而其他无毒溶液与A混合不会变色。已知一次实验需要1小时,由于一
汉书HE8,好用的汇编代码编写工具
汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大
三进制计算机_数学中的二进制和其应用
二进制与计算机事物的多少或者顺序,我们可以用一种称为“数”的符号来表示。事物的数量是无穷的,我们却不可能创造无数个符号。为了解决这个难题,人们创造了进位制(又叫做位值制),这样就可以用几个有限的符号,来表达无穷的数量了。进位制是人类计数史上最伟大的创造之一。现在国际通用的主要进位制有十进制、二进制、二十进制和六十进制。其中的二进制是计算机通用的进位制。八卦:最早提出的二进制思想中国古人很早就开始使...
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
温度PID控制PLC程序
温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值
关于三进制
在写代码的时候,用到位运算,其中网上有人解法中的二进制模拟三进制的字眼吸引住了我。 百度之,在茫茫网页中发现了知乎中关于”三进制优于二进制的讨论“,好奇的点进去一看,还挺有道理的,确切的说应该是对称三进制(-1,0,1)强于二进制 据说,苏联有科学家试着用三进制发明计算机呢,不知后事如何,可百度之,或谷歌之 摘录如下: “ 三进制有两种:普通三进制和对称三进制;而对于计算机而言,
经典c程序100例
【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 2.程序源代码:main(){int i,j,k;printf("/n");for(i=1;i for(j=1;j for (k=1;k { if (i!=k&&i!=j&&j!=
三进制计算机未来的发展趋势,如果研制出三进制计算机会怎样?
楼上有几个答案似乎都是先下结论再讲原因。首先三进制和二进制都很“反人类”,给你一串0和1,谁能搞清楚究竟是等于几?三进制起码比二进制短很多。另外三进制实际上更符合逻辑上的三态:是、否、未知,这种三态的布尔值在编程时经常会被用到。从电路实现上三进制和二进制应该相当,因为能提供正电压的电路一般都很容易就能提供一个对称的负电压,结构上不会复杂太多,但效果是相同位数的bit可以表示远比二进制大的整数范围。...
暴力破解算法——寻找密码(进制替换法)
暴力破解算法——寻找密码(进制替换法)今天在看代码的时候发现的一种方法,我相信这种方法肯定是有人用过的,但是我也没有查到具体叫做什么方法,所以就自创了一个名字,不过这样子看起来我好像是一个不学无术的人,不过也确实如此,有空我再去查一下这个方法,有知道的可以在我下面评论一下,感谢!
常用密码表
1. 基本字母表所谓的基本字母表,就是 A-Z 与 1-26 个数字相对应; A、B、C、D、E、F、G、H、I、J、K、L 1-13 M、N、O、P、Q、R、S、T、U、V、W、X、Y、Z 14-26 2. QWE 加密表、解密表加密表:计算机外接键盘(乱序) ⇒ A-Z(也即 QWE ⇒ ABC,以此类推) QWE 加密表也可以写作如下形式: (a,q,j,p,h,i,o,g,u,x,
1278



被折叠的 条评论
为什么被折叠?



