0
点赞
收藏
分享

微信扫一扫

Mysql 数据库索引设置规范

一天清晨 2023-06-11 阅读 35

文章目录



一、题目


🎃题目描述


🎃输入输出


🎃样例1

输入
0 2 3 0 5 6


输出
23:56:00


二、思路参考


三、代码参考

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

// 格式化时间,保证时、分、秒的显示格式为两位数
void formatTime(int time, char *formattedTime) {
    sprintf(formattedTime, "%02d", time);
}

int main() {
    int nums[6];
    for (int i = 0; i < 6; i++) {
        scanf("%d", &nums[i]);
    }

    char *maxTime = NULL;

    // 遍历所有排列组合情况
    for (int i = 0; i < 6; i++) {
        for (int j = 0; j < 6; j++) {
            if (i == j) {
                continue;
            }
            for (int k = 0; k < 6; k++) {
                if (k == i || k == j) {
                    continue;
                }
                for (int m = 0; m < 6; m++) {
                    if (m == i || m == j || m == k) {
                        continue;
                    }
                    for (int n = 0; n < 6; n++) {
                        if (n == i || n == j || n == k || n == m) {
                            continue;
                        }
                        for (int p = 0; p < 6; p++) {
                            if (p == i || p == j || p == k || p == m || p == n) {
                                continue;
                            }
                            int hour = nums[i] * 10 + nums[j];
                            int minute = nums[k] * 10 + nums[m];
                            int second = nums[n] * 10 + nums[p];

                            if (hour <= 23 && minute <= 59 && second <= 59) {
                                char formattedTime[9];
                                formatTime(hour, formattedTime);
                                strcat(formattedTime, ":");
                                formatTime(minute, formattedTime + 3);
                                strcat(formattedTime, ":");
                                formatTime(second, formattedTime + 6);

                                if (maxTime == NULL || strcmp(formattedTime, maxTime) > 0) {
                                    if (maxTime != NULL) {
                                        free(maxTime);
                                    }
                                    maxTime = strdup(formattedTime);
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    if (maxTime == NULL) {
        printf("invalid\n");
    } else {
        printf("%s\n", maxTime);
        free(maxTime);
    }

    return 0;
}


作者:KJ.JK

举报

相关推荐

0 条评论