lt36(lt36)
一、什么是36进制
如何根据字母得到对应数字
将'0'-'9'映射到数字0-9,将'a'-'z'映射到数字10-35的方法
将'0'-'9','a'-'z'存储到List中,index是0-35为其对应的数字
static Character[] nums={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
static List
list= Arrays.asList(nums);
int index= list.indexOf('p');//得到的是25
利用ASCII码
//找到字符对应的整数
public static int getInt(char a){
if(a>='0'&&a<='9'){
return a-'0';
}else{
return(a-'a')+ 10;
}
}
二、题目
题目
36进制由0-9,a-z,共36个字符表示,最小为'0'
'0''9'对应十进制的09,'a''z'对应十进制的1035
例如:'1b'换算成10进制等于 1* 36^1+ 11* 36^0= 36+ 11= 47
要求按照加法规则计算出任意两个36进制正整数的和
如:按照加法规则,计算'1b'+'2x'='48'
要求:不允许把36进制数字整体转为10进制数字,计算出10进制数字的相加结果再转回为36进制
思路
按照十进制的加法方法,满36向前进一位
代码
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class进制转换{
static Character[] nums={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
static List
list= Arrays.asList(nums);
public static void main(String[] args){
Scanner scan=new Scanner(System.in);
String str1= scan.next();
String str2= scan.next();
String r=f(str1,str2);
System.out.println(r);
}
static String f(String str1, String str2){
char[] s1= str1.toCharArray();
char[] s2= str2.toCharArray();
int i= s1.length- 1;
int j= s2.length- 1;
int temp= 0;//进位
StringBuilder sb= new StringBuilder();
while(i>= 0&& j>= 0){
char c1= s1[i];
char c2= s2[j];
int index1= list.indexOf(c1);
int index2= list.indexOf(c2);
int sum= index1+ index2+ temp;
if(sum>= 36){
temp= 1;
sb.append(list.get(sum% 36));
} else{
temp=0;
sb.append(list.get(sum));
}
i--;
j--;
}
while(i>= 0){
int sum= list.indexOf(s1[i])+ temp;
if(sum>=36){
temp= 1;
sb.append(list.get(sum% 36));
} else{
temp=0;
sb.append(list.get(sum));
}
i--;
}
while(j>= 0){
int sum= list.indexOf(s2[j])+ temp;
if(sum>=36){
temp= 1;
sb.append(list.get(sum% 36));
} else{
temp=0;
sb.append(list.get(sum));
}
j--;
}
if(temp!=0){
sb.append('1');
}
return sb.reverse().toString();
}
}
参考文献
0
©著作权归作者所有
推荐阅读
力扣每日一题:5738. K进制表示下的各位数字总和
清风Python
阅读61
算法题:43.字符串相乘(leetcode)
最近有点丧
阅读50
每日一算法:二项式系数
lio_zero
阅读177
如何在 JavaScript中将字符串转换为数字
lio_zero
阅读91
剑指offer 19-表示数值的字符串(指针移动算法)
二、鞋子36号是多少码
鞋子36号是36码。
国际标准鞋号及尺码如下:
34号—220MM;35号——225MM;36号——230MM;37号——235MM;38号——240MM;39号——245MM;40号——250MM;41号——255MM;42号——260MM;43号——265MM;44号——270MM;45号——275MM。
扩展资料
鞋子的尺码(Shoes Size),又叫鞋号,常见有以下标法:国际、欧洲、美国和英国。国际标准鞋号表示的是脚长的毫米数。中国标准采用毫米数或厘米数为单位来衡量鞋的尺码大小。如:123则表示的是以毫米为单位,而12.3则表示的是以厘米单位,实际上两者指代是一致的。
换算公式
厘米数×2-10=欧制(欧制+10)÷2=厘米数
厘米数-18+0.5=美制美制+18-0.5=厘米数
厘米数-18=英制英制+18=厘米数
参考资料来源:百度百科:鞋子尺码
三、36d的36指的是什么
36是指下胸围,数字36代表了胸围的大小,它的默认单位是英寸。
通常女性胸围测量包括上围和下围。上围就是通常所指的32/34/36,分别为70/75/80厘米,而A/B/C/D则表示上下围之差,分别为10/12.5/15/17.5厘米。
确定胸罩的罩杯。罩杯尺寸=胸围-下胸围。罩杯一般用A、B、C等大写英文字母表示,每2.5厘米为一级,AA最小为7.5厘米,A为10厘米,B是12.5厘米,C是15厘米,D是17.5厘米,E是20厘米,再往上就算是特种尺寸了。下胸围加上罩杯代码就是胸罩型号。
胸围标准
1、瘦小族:胸围(cm)÷身高(cm)<0.49。
2、普通族:0.5≤胸围(cm)÷身高(cm)≤0.53。
3、丰满族:0.54≤胸围(cm)÷身高(cm)≤0.55。
4、波霸族:胸围(cm)÷身高(cm)>0.55。
也就是说,一个1.60米的成熟的女子,她的标准胸围应该是84.8厘米;一个身高1.70米的成熟女子,其标准胸围应为90.1厘米。