CURRY乄30 2024-08-31 16:20 采纳率: 100%
浏览 8
已结题

1542. 小X算排名 为什么超时了

img

img


#include<bits/stdc++.h>
using namespace std;
map<int,int,greater<int> > m;
int a[100100];
int main()
{
    int n,i,c=0,t;
    cin>>n;
    for(i=0;i<n;i++)
    {
        cin>>a[i];
        if(m.count(a[i])==0)
            m[a[i]]=1;
        else m[a[i]]++;
    }
    map<int,int>::iterator it;
    for(it=m.begin();it!=m.end();it++)
    {
        t=it->second;
        m[it->first]=c+1;
        c=c+t;
    }
    for(i=0;i<n;i++) cout<<m[a[i]]<<endl;
    return 0;
}

各位程序员们,我这个程序为什么超时了

  • 写回答

2条回答 默认 最新

  • 爱编程的小D 2024-08-31 19:31
    关注

    你其实可以尝试不用迭代器

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月9日
  • 已采纳回答 9月1日
  • 创建了问题 8月31日