0
点赞
收藏
分享

微信扫一扫

算法问题-第一次课程

青乌 2022-02-19 阅读 67
算法

目录

1.猜年龄(填空题)

public static void main(String[] args) {
        for(int i=1;i<100;i++)
        {
            int f=i*i*i;
            if((f+"").length()!=4) continue;
            f*=i;
            if((f+"").length()==6)
            {
                System.out.println(i+"\t"+i*i*i+"\t"+i*i*i*i);
            }
        }
    }
结果:
18	5832	104976
19	6859	130321
20	8000	160000
21	9261	194481
然后看一看那个是符合题意的即可(18

2. 罗马数字

package test;

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Scanner;


public class Main 
{
	public static Map<Character,Integer>map=new LinkedHashMap<>();
    public static void main(String[] args)
    {
//        map.put("I",1);
//        map.put("V",5);
//        map.put("X",10);
//        map.put("L", 50);
//        map.put("C", 100);
//        map.put("D", 500);
//        map.put("M",1000);
        map.put('I',1);
        map.put('V',5);
        map.put('X',10);
        map.put('L', 50);
        map.put('C', 100);
        map.put('D', 500);
        map.put('M',1000);
        
        Scanner cin=new Scanner(System.in);
        
        int num=cin.nextInt();
        for(int i=0;i<num;i++)
        {
        	String s=cin.next();
        	int sum=0;
        	for(int j=0;j<s.length();j++)
        	{
        		sum+=map.get(s.charAt(j));
        		if(j>0&&(map.get(s.charAt(j))>map.get(s.charAt(j-1))))
        		{
        			sum-=2*map.get(s.charAt(j-1));
        		}
        	}
        	System.out.println(sum);
        }
    }
}

举报

相关推荐

算法第一次作业(递归)

【软件工程课程第一次任务】

sql第一次

记录第一次

第一次打卡

jQuery第一次课

假期第一次总结

第一次python作业

0 条评论