666
  • 板块题目总版
  • 楼主jumpup
  • 当前回复5
  • 已保存回复6
  • 发布时间2025/7/24 12:26
  • 上次更新2025/7/24 16:47:07
查看原帖
666
1279503
jumpup楼主2025/7/24 12:26

666原来inline不能用多

#include<bits/stdc++.h>
using namespace std;
string num;
inline int query(int f,int k)
{
    int x,v=1;
    for(int i=k-1;i>=0;i--)
    {
        if(num[i]>='A'&&num[i]<='Z')
        {
            x+=v*(num[i]-'A'+10);
            v*=f;
        }
        if(num[i]>='0'&&num[i]<='9')
        {
            x+=v*(num[i]-'0');
            v*=f;
        }
    }
    return x;
}
inline void output(stack<int> s)
{
    int p;
    while(!s.empty())
    {
        p=s.top();
        s.pop();
        if(p>10)
        {
            printf("%c",(p-10)+'A');
        }
        else {
            printf("%d",p);
        }
    }
}
inline void set_num(int oct_num,int last)
{
    stack<int> s;
    int k=oct_num;
    while(k)
    {
        s.push(k%last);
        k/=last;
      // cout<<s.top()<<endl;
    }
    output(s);
}
int main()
{
    int first,last;
    cin>>first>>num>>last;
    int k=num.length();
    int oct_num=query(first,k);
   // cout<<oct_num<<""""""""<<endl;
    set_num(oct_num,last);
    return 0;
}

上面的代码就是个例子,本地过了洛谷WA 删了inline直接AC 有dalao知道是什么原因吗?(洛谷p1143)

2025/7/24 12:26
加载中...