只过四个但是下载的第一个自己测试没错
查看原帖
只过四个但是下载的第一个自己测试没错
767048
Rookie_h楼主2023/1/17 19:36
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
    int type = 0, flag, outf = 1;
    string s;
    getline(cin, s);
    for (int i = 0; i < s.size(); i++)
    {
        if (s[i] == '.')
        {
            type = 1;
            flag = i;
        }
        else if (s[i] == '/')
        {
            type = 2;
            flag = i;
        }
        else if (s[i] == '%')
        {
            type = 3;
            flag = i;
        }
    }
    if (type == 0)
    {
        for (int i = s.size(); i >= 0; i--)
            cout << s[i];
    }
    else if (type == 1)
    {
        for (int i = flag - 1; i >= 0; i--)
        {
            if (s[i] != '0' && outf == 1)
            {
                cout << s[i];
                outf = 0;
            }
            else if (outf == 0)
                cout << s[i];
        }
        outf = 1;
        cout << '.';
        for (int i = s.size(); i >= flag + 1; i--)
        {
            if (s[i] != '0' && outf == 1)
            {
                cout << s[i];
                outf = 0;
            }
            else if (s[i] == '0' && i == flag + 1)
                break;
            else if (outf == 0)
                cout << s[i];
        }
    }
    else if (type == 2)
    {
        for (int i = flag - 1; i >= 0; i--)
        {
            if (s[i] != '0' && outf == 1)
            {
                cout << s[i];
                outf = 0;
            }
            else if (outf == 0)
                cout << s[i];
        }
        outf = 1;
        cout << '/';
        for (int i = s.size(); i >= flag + 1; i--)
        {
            if (s[i] != '0' && outf == 1)
            {
                cout << s[i];
                outf = 0;
            }
            else if (s[i] == '0' && i == flag + 1)
                break;
            else if (outf == 0)
                cout << s[i];
        }
    }
    else if (type == 3)
    {
        for (int i = s.size() - 2; i >= 0; i--)
        {
            if (s[i] != '0' && outf == 1)
            {
                cout << s[i];
                outf = 0;
            }
            else if (s[i] == '0' && i == flag + 1)
                break;
            else if (outf == 0)
                cout << s[i];
        }
        cout << '%';
    }
}

自己也试了几个数据都能过的但是网站上过不了

2023/1/17 19:36
加载中...