UVA 11991 - Easy Problem from Rujia Liu?
//Root :: AOAPC I: Beginning Algorithm Contests -- Training Guide (Rujia Liu) :: Chapter 1. Algorithm Design :: General Problem Solving Techniques :: Examples
//UVA 11991 - Easy Problem from Rujia Liu? // 昨晚
/*题意:给n个数,m个询问,问第k个位置的v的序号是多少?
思路:第一次提交 O(n)时间 ,运行错误runtime error,
二维数组又爆,参考他人使用map容器和vector的
//map:一对一映射,无重复元素,基于关键字查找
C++ STL模板巧很好用 要学的东西太多了
*///AC
#include<cstdio>
#include<map>
#include<vector>
using namespace std;
int n,m;
map<int ,vector<int> > s;//开辟二维向量s 记录元素、元素个数、元素位置
int main()
{
int a,i,k,v;
while(scanf("%d%d",&n,&m)!=EOF)
{
s.clear();//每次初始化
for(i=1;i<=n;i++)
{
scanf("%d",&a);
s[a].push_back(i);//存储a 和a的序号 并对a的个数进行累加
}
for(i=0;i<m;i++)
{
scanf("%d%d",&k,&v);
if(s[v].size()<k) //a的总个数
printf("0\n");
else
printf("%d\n",s[v][k-1]);
}
}
return 0;
}
/*//runtime error 改的我肚子疼
#include<stdio.h>
#include<string.h>
const int M=100010;
long long m,n;
long long a[M],ind[M];
int f(int x,int y)
{
long long i,j=0,ok=0;
if(ind[y]==0) return 0;
else
{
for(i=0;i<n;i++)
{
if(a[i]==y)
{
if(j<x)
j++;
if(j==x)
{
ok=1;break;
}
}
}
}
if(ok)return i+1;
else return 0;
}
int main()
{
long long i,j,k,c,b,d;
while(scanf("%lld%lld",&n,&m)!=EOF)
{
memset(ind,0,sizeof(ind));
for(i=0;i<n;i++)
scanf("%lld",&a[i]);
for(i=0;i<m;i++)
{
scanf("%lld%lld",&b,&c);
ind[c]++;
d= f(b,c); printf("%lld\n",d);
}
}
return 0;
}
/*
8 8
1 2 3 4 4 5 8 9
*/
*/
posted on 2013-02-06 16:06 ACM_Someone like you 阅读(401) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)