有没有必要增加题解
查看原帖
有没有必要增加题解
912750
CarrotMeow楼主2023/12/13 13:24
#include <bits/stdc++.h>
using namespace std;

int a[8], p, mxa;
string fl[8];

int main() {
    fill(fl, fl + 7, ":");
    for (int &i : a)
        cin >> hex >> i, cin.ignore();
    for (int i = 0; i < 8; i++) {
        int cnt = 0;
        for (int j = i; j < 8 && !a[j]; j++) cnt++;
        if (cnt > mxa) p = i, mxa = cnt;
    }
    for (int i = p; i < p + mxa; i++)
        a[i] = 0x10000, fl[i] = "";
    fl[p] = ":";
    if (*a == 0x10000) cout << ':';
    for (int i = 0; i < 8; i++) {
        if (a[i] != 0x10000)
            cout << hex << a[i];
        cout << fl[i];
    }
}

我的思路好像和题解区的不大一样。

2023/12/13 13:24
加载中...