Unity中做力扣算法题(Day4 罗马数转整数问题)

Tips(新手向):

1.创建一个Unity新项目。

2.在Hierarchy窗口下鼠标右键新建一个Cube。

3.在project的Assets文件夹下新建一个Scripts文件夹,鼠标右键新建一个c# Script并取名为Come(可自拟)。

4.在Hierarchy窗口点击Cube,在右边的Inspector窗口下点击Add Componet,搜索Come脚本并点击。或者可以直接用鼠标拖拽脚本挂到Cube上。

5.双击Come脚本并编辑(下方源码)。

6.ctrl+shift+c调出console窗口看调试结果(如图 传的参数是XXXIII)。

题目:

 代码:

using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using UnityEngine;

public class Come:MonoBehaviour
{
    void Update()
    {
        RomanToInt("XXXIII");
    }

    void RomanToInt(string s)
    {
        Dictionary<string, int> dic = new Dictionary<string, int>
        { {"I", 1} , { "V", 5 }, { "X", 10 }, { "L", 50 }, { "C", 100 }, { "D", 500 }, { "M", 1000 } };
        int result = 0;
        for (int i = 0; i < s.Length - 1; i++)
        {
            //当第i个字符代表的数字比第i+1个字符代表的数字小时,则减去第i个字符代表的数字,否则加上第i个字符代表的数字
            if (dic[s[i].ToString()] < dic[s[i + 1].ToString()])
            {
                result -= dic[s[i].ToString()];
            }
            else
            {
                result += dic[s[i].ToString()];
            }
        }
        var a = result += dic[s[s.Length - 1].ToString()];
        Debug.Log(a);
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值