【LeetCode】整数转罗马数字 C语言 | 此刻,已成艺术(bushi)

Problem: 12. 整数转罗马数字

思路

暴力破解 + 转换

解题方法

由思路可知

复杂度

时间复杂度:

O ( n ) O(n) O(n)

空间复杂度:

O ( 1 ) O(1) O(1)

Code

char* intToRoman(int num) {
    char *s = (char*)malloc(sizeof(char)*4000), *p = s;
    while(num > 0) {
        if(num >= 1000) {
            num -= 1000;
            *(p++) = 'M';
        } else if(num >= 900) {
            num -= 900;
            *(p++) = 'C';
            *(p++) = 'M';
        } else if(num >= 500) {
            num -= 500;
            *(p++) = 'D';
        } else if(num >= 400) {
            num -= 400;
            *(p++) = 'C';
            *(p++) = 'D';
        } else if(num >= 100) {
            num -= 100;
            *(p++) = 'C';
        } else if(num >= 90) {
            num -= 90;
            *(p++) = 'X';
            *(p++) = 'C';
        } else if(num >= 50) {
            num -= 50;
            *(p++) = 'L';
        } else if(num >= 40) {
            num -= 40;
            *(p++) = 'X';
            *(p++) = 'L';
        } else if(num >= 10) {
            num -= 10;
            *(p++) = 'X';
        } else if(num >= 9) {
            num -= 9;
            *(p++) = 'I';
            *(p++) = 'X';
        } else if(num >= 5) {
            num -= 5;
            *(p++) = 'V';
        } else if(num >= 4) {
            num -= 4;
            *(p++) = 'I';
            *(p++) = 'V';
        } else {
            num -= 1;
            *(p++) = 'I';
        }
    }
    *p = 0;
    return s;
}

相关推荐

  1. Leetcode罗马数字整数

    2024-03-11 13:42:06       5 阅读
  2. [LeetCode] 12. 整数罗马数字

    2024-03-11 13:42:06       27 阅读
  3. [leetcode] 12. 整数罗马数字

    2024-03-11 13:42:06       51 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-11 13:42:06       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-11 13:42:06       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-11 13:42:06       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-11 13:42:06       20 阅读

热门阅读

  1. linux Shell 命令行-02-var 变量

    2024-03-11 13:42:06       21 阅读
  2. MySQL之主从同步(openEuler版)

    2024-03-11 13:42:06       19 阅读
  3. 【SQL - 软件 - MySQL】随笔 - 查看已有数据库

    2024-03-11 13:42:06       20 阅读
  4. linux系统 QT 处理键盘Ctrl+C信号

    2024-03-11 13:42:06       19 阅读
  5. 举例说明计算机视觉(CV)技术的优势和挑战。

    2024-03-11 13:42:06       25 阅读
  6. Ubuntu系统开发环境搭建和常用软件

    2024-03-11 13:42:06       16 阅读
  7. Unity3D 基于AStar地图的摇杆控制角色详解

    2024-03-11 13:42:06       20 阅读
  8. Debian系APT源通用镜像加速配置

    2024-03-11 13:42:06       21 阅读
  9. NLP技术

    2024-03-11 13:42:06       22 阅读
  10. Go语言聊天室demo

    2024-03-11 13:42:06       19 阅读
  11. 【golang】二叉树的遍历

    2024-03-11 13:42:06       22 阅读
  12. Go语法之函数 defer使用

    2024-03-11 13:42:06       20 阅读