当前位置: 首页 > news >正文

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

*/

*/

转载于:https://www.cnblogs.com/someonelikeyou/archive/2013/02/06/2907630.html

相关文章:

  • Hadoop概念学习系列之关于hadoop-2.2.0和hadoop2.6.0的winutils.exe、hadoop.dll版本混用(易出错)(四十三)...
  • 蒙哥玛利模幂算法
  • angularjs的$on、$emit、$broadcast
  • Java项目相关监控与调优
  • 非对称加密(RSA、DH密钥交换算法、数字签名)
  • EFM32外设模块—USART V1.00
  • 我的第一篇博客 Javascript继承
  • manila nfs 删除 share 分析
  • atl中控件头文件所在位置
  • input标签的type为select、radio、checkbox的使用
  • matlab练习程序(makelut/applylut)
  • “图片”--预览
  • Linux整数比较
  • ios设置textField只能输入数字用于电话号码
  • 安装Mariadb常见的问题(五)
  • $translatePartialLoader加载失败及解决方式
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • 【Amaple教程】5. 插件
  • 【Linux系统编程】快速查找errno错误码信息
  • 2017 前端面试准备 - 收藏集 - 掘金
  • 345-反转字符串中的元音字母
  • CAP 一致性协议及应用解析
  • ES6语法详解(一)
  • Hibernate【inverse和cascade属性】知识要点
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • Laravel 中的一个后期静态绑定
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • Phpstorm怎样批量删除空行?
  • Python学习之路13-记分
  • 聊聊spring cloud的LoadBalancerAutoConfiguration
  • 深度学习中的信息论知识详解
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 在electron中实现跨域请求,无需更改服务器端设置
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • 【干货分享】dos命令大全
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • (C语言)二分查找 超详细
  • (分类)KNN算法- 参数调优
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (附源码)计算机毕业设计SSM疫情居家隔离服务系统
  • (六)Hibernate的二级缓存
  • (顺序)容器的好伴侣 --- 容器适配器
  • (一)Java算法:二分查找
  • (转)shell调试方法
  • (轉貼) 2008 Altera 亞洲創新大賽 台灣學生成果傲視全球 [照片花絮] (SOC) (News)
  • .bat批处理(一):@echo off
  • .Family_物联网
  • .net core webapi 大文件上传到wwwroot文件夹
  • .net core 依赖注入的基本用发
  • .Net Web窗口页属性
  • .net 后台导出excel ,word
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...