热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

蓝桥学院2019算法题1.8

解题思路:2个相同的2进制数做不进位加法,结果为010相同的10进制数做不进位加法,结果为0K个相同的K进制数做不进位加法,

解题思路:

2个相同的2进制数做不进位加法,结果为0

10相同的10进制数做不进位加法,结果为0

K个相同的K进制数做不进位加法,结果为0

任意进制互换方法:

1、手工取余法

2、Integer.toString(i,radix)

1 package bitOperation;
2
3 /**
4 * @author zsh
5 * @company wlgzs
6 * @create 2019-02-15 8:37
7 * @Describe 题7·出现K次与出现1次
8 * 数组中只有一个数出现了1次,其他的数都出现K次,
9 * 请输出出现1次的数。
10 */
11 public class Main7 {
12 public static void main(String[] args) {
13 int[] arr = {1,1,1,2,2,2,3,4,4,4,5,5,5};
14 int len = arr.length;
15 char[][] kRadix = new char[len][];
16 int k = 3;
17
18 int maxlen = 0;
19 //转成K进制字符数组
20 for (int i = 0; i ) {
21 //求每个数字的3进制字符串并翻转,然后转为字符数组
22 kRadix[i] = new StringBuilder(Integer.toString(arr[i],k)).reverse().toString().toCharArray();
23 if (kRadix[i].length > maxlen){
24 maxlen = kRadix[i].length;
25 }
26 }
27
28 int[] resArr = new int[maxlen];
29 for (int i = 0; i ) {
30 //不进位加法
31 for (int j = 0;j){
32 if (j >= kRadix[i].length)
33 resArr[j] += 0;
34 else
35 resArr[j] += (kRadix[i][j] - '0');
36 }
37 }
38
39 int res = 0;
40 //将K进制数还原为10进制数
41 for (int i = 0; i ) {
42 res += (resArr[i] % k) * (int) Math.pow(k,i);
43 }
44 System.out.println(res);
45 }
46 }

 

转:https://www.cnblogs.com/zsh-blogs/p/10381695.html



推荐阅读
  • 本文详细介绍了在Luat OS中如何实现C与Lua的混合编程,包括在C环境中运行Lua脚本、封装可被Lua调用的C语言库,以及C与Lua之间的数据交互方法。 ... [详细]
  • 本文详细探讨了在Java中如何将图像对象转换为文件和字节数组(Byte[])的技术。虽然网络上存在大量相关资料,但实际操作时仍需注意细节。本文通过使用JMSL 4.0库中的图表对象作为示例,提供了一种实用的方法。 ... [详细]
  • 本文基于Java官方文档进行了适当修改,旨在介绍如何实现一个能够同时处理多个客户端请求的服务端程序。在前文中,我们探讨了单客户端访问的服务端实现,而本篇将深入讲解多客户端环境下的服务端设计与实现。 ... [详细]
  • 在开发过程中,有时需要提供用户创建数据库的功能。本文介绍了如何利用 .NET 和 ADOX 在应用程序中实现创建 Access 数据库,并详细说明了创建数据库及表的具体步骤。 ... [详细]
  • 贡献转移在计算每个元素的作用的时候,我们可以通过反向枚举作用效果,添加到作用元素的身上,这种方法叫做贡献转移。更正式的说, ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 深入解析 C++ 中的 String 和 Vector
    本文详细介绍了 C++ 编程语言中 String 和 Vector 的使用方法及特性,旨在帮助开发者更好地理解和应用这两个重要的容器。 ... [详细]
  • 使用Matlab创建动态GIF动画
    动态GIF图可以有效增强数据表达的直观性和吸引力。本文将详细介绍如何利用Matlab软件生成动态GIF图,涵盖基本代码实现与高级应用技巧。 ... [详细]
  • 想把一组chara[4096]的数组拷贝到shortb[6][256]中,尝试过用循环移位的方式,还用中间变量shortc[2048]的方式。得出的结论:1.移位方式效率最低2. ... [详细]
  • Vue CLI 基础入门指南
    本文详细介绍了 Vue CLI 的基础使用方法,包括环境搭建、项目创建、常见配置及路由管理等内容,适合初学者快速掌握 Vue 开发环境。 ... [详细]
  • 本文探讨了如何在 Spring MVC 框架下,通过自定义注解和拦截器机制来实现细粒度的权限管理功能。 ... [详细]
  • 本文深入探讨了动态赋值的概念及其在编程实践中的应用,特别是通过Java代码示例来展示如何利用循环结构动态地为数组分配值。 ... [详细]
  • 利用Node.js实现PSD文件的高效切图
    本文介绍了如何通过Node.js及其psd2json模块,快速实现PSD文件的自动化切图过程,以适应项目中频繁的界面更新需求。此方法不仅提高了工作效率,还简化了从设计稿到实际应用的转换流程。 ... [详细]
  • 本文详细探讨了在Java编程语言中,构造函数、静态代码块和构造代码块的执行顺序。首先明确了静态代码块、构造代码块以及构造函数方法体的执行优先级,随后深入分析了构造函数体执行前的具体步骤,包括父类构造器的调用、非静态变量的初始化等。 ... [详细]
  • 本文详细介绍了Linux系统中信号量的相关函数,包括sem_init、sem_wait、sem_post和sem_destroy,解释了它们的功能和使用方法,并提供了示例代码。 ... [详细]
author-avatar
Alistar1991_281
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有