Uva 10474大理石在哪儿——Vector写法

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情
#include "cstdio"
#include "iostream" 
#include "algorithm"
#include "vector"
using namespace std;

int main(){
    int count;
    int num;
    int record;
    int kase = 1;
    int question;
    vector<int> stone;

    while(cin >> count >> num){
        stone.clear();
        for(int i = 0; i < count; i++){
            cin >> record ;
            stone.push_back(record);
        }

        sort(stone.begin(),stone.end());

        for(int i = 0; i < num; i++){
            cin >> question ;

            vector<int>::iterator result = find(stone.begin(),stone.end(),question);//find 找到第一次出现元素的位置,如果没有就返回.end(); 
            printf("CASE# %d\n",kase++);


            if(result == stone.end()){  //注意v1.end()指向的是最后一个元素的下一个位置,所以访问最后一个元素,[begin, end)
                printf("%d not found \n",question);
//              printf("%d\n",result);//    41817412
//              printf("%d\n",stone.end());//从1开始   41817416
            }
            else{

                printf("%d found at %d\n",question,result - stone.begin() + 1); //result与begin之间间隔为 (X - 1 + 1)  
//              printf("%d\n",stone.begin());
//              printf("%d\n",result);//    41817412
//              printf("%d\n",stone.end());
            }
        }

    }
    return 0;
} 
UVA10474 大理石在哪儿 Where is the Marble? 紫书STL第一道题,简单题 #include <bits/stdc++.h> #define fi first #define se second #define pb push_back #define mk make_pair #define sz(x) ((int) (x).size()) #define all(x) (x).begin(), (x).end() using namespace std; typedef long long ll; typedef vector&lt 阅读详情

相关推荐

UVA - 10474:Where is the Marble?

# 来源: 标签:排序、查找 参考资料: 相似题目: 题目 Raju and Meena love to play with Marbles. They have got a lot of marbles with numbers written on them. At the beginning, Raju would place the mar...

WINGREZ‘S BLOG 565

C++ --- UVa10474. Where is the Marble? 解题报告

本博文源于《算法竞赛入门经典(第二版)》,旨在解决大理石在哪儿(Where is the Marble? Uva10474)这道题目,渐渐走入题库训练。博文目录有:1.问题再现2.样例输入&样例输出3.题目分析4. 代码测试效果5.代码讲解及完整源码

执念斩长河 1376

uva-10474 Where is the Marble? 题解

紫书第五章练习 uva-10474题解;排序函数sort和二分查找函数lower_bound等的使用

caizhixinczx的博客 272

UVA 10474 Where is the Marble?

题目链接:https://vjudge.net/problem/UVA-10474 题意:多组数据,第一行,N,Q   N代表有N个数,Q代表有Q次询问,         接下来是N个数,    然后是Q个询问,每个询问是一个数,代表这个数在原来的N个数中第几(升序) 用计数排序很容易解决了,计数排序思想很简单,当然其他方法也可以,可以排序STL二分,也能过,水题水解。 #include

CS33sun的博客 451

uvaoj10474---详解细节(二分法)注意!

uvaoj 10474  这题呢,太水了...不过初学者可以练习一下。     题意:输入两组数据,一组数据有m个 一组有n个,找第二个数据每个数在第一个数据中(从小到大的排后)的位置     要求:1.数组足够大10000应该可以了           2.什么排序都可以,不会超时的           3.查找的时候,有人用二分法,其实我不太建议,直接顺序找就可以了,比如1,1,1,

sinat_AQ的博客 712

UVa 10474 Where is the Marble?(大理石在哪儿)

UVa 10474 Where is the Marble?(大理石在哪儿) UVa题目链接 题目名称:大理石在哪 题目描述: 现有N个大理石,每个大理石上写了一个非负整数,首先把各数从小到大排序,之后回答Q个问题,每个问题问是否有一个大理石写着某个整数x,如果是,还要回答哪块大理石上写着x,排序后的大理石从左到右编号为1~N。 样例输入: 4 1 2 3 5 1 5 5 2

Voidwalkerxiaohui 1694

STL--vector容器find()函数的用法及UVa10474挖的坑

STL

Vapor_的博客 9651

算法竞赛入门经典(第二版) | 例题5-1 大理石在哪 (普适查找)(UVa10474,Where is the Marble?)

大意: 给一序列,要求先将序列排序。再给n个数字,找到每个数字在序列中的位置 题目(提交)网址→UVa-10474 百度翻译→百度翻译 没使用过该网站的同学请猛戳这里→vJudge教程 思路 数组存入,sort排序,find或lower_bound查找。 分析: 最开始没有注意到n是有上限的,于是开了一个vector(小声哔哔,vector比数组慢了一倍有余),将vector换成数组就是最佳解...

weixin_43899069的博客 966

STL初步:大理石在哪儿?

uva 10474 现有N个大理石,每个大理石上写了一个非负整数。首先把各数从小到大排序,然后回答Q个问题。每个问题问是否有一个大理石写着某个整数x,如果是,还要回答哪个大理石上写着x。排序后的大理石从左到右编号为1~N。(样例中,为了节约篇幅,所有大理石上的数合并到一行,所有问题也合并到一行。) 样例输入: 4 1  2 3 5 1 5 5 2 1 3 3 3 1   2 3 

Winner_Z的博客 1015

uva 10474

#include #include #include #include using namespace std; int bsearch(int *A, int x, int y, int v){ int m; while(x < y){ m = x + (y-x)/2; if(A[m] >= v) y = m; else

wangzhuo0978的专栏 434

算法竞赛入门经典(第二版)-刘汝佳-第五章 C++与STL 例题(9/12)

说明本文是我对第五章12道例题的练习总结,建议配合紫书——《算法竞赛入门经典(第2版)》阅读本文。 另外为了方便做题,我在VOJ上开了一个contest,欢迎一起在上面做:第五章例题contest 如果想直接看某道题,请点开目录后点开相应的题目!!!例题例5-1 UVA 10474 大理石在哪儿 (排序和查找)思路 这个题比较基础,排序用sort,查找用lower_bound,都是STL

梁山伯的专栏 2569

STL之排序与检索--lower_bound()函数与upper_bound()函数

在STL的库中提供了一个函数叫作:lower_bound(容器或数组名, 检索长度, key); 分别介绍一下这三个参数,容器或数组名指的是排序内容的其实地址,例如要对某数组a[10],容器或数组名就应该是a,又例如有一个不定长数组vector v,那么第一个参数容器或者数组名就应该是v.begin();第二个参数指明排序内容的长度,对于数组,那么就是数组的长度(根据情况而定,比如数组长度是10,...

d1781516638的博客 628

《算法竞赛入门经典2ndEdition 》例题5-1 大理石在哪儿(Where is the marble?, Uva10474)

虽然第三章的3-12还没做,但是由于寒假要上课,讲图论于是我打算抓紧学习数据结构,然后进入图的学习。 于是立马决定开始第五章

OccupiedCSDN的博客 805

【C++之STL初步】——排序检索与vector

排序搜索与vector

hehelm的博客 657

《算法竞赛入门经典(第2版)》第 5 章 C++与 STL 入门-代码笔记

5.1.2 引用 5.1.3 字符串 5.1.4 再谈结构体 5.2 STL 初步 例题 5-1 大理石在哪儿(Where is the Marble?, UVa 10474) 例题 5-2 木块问题(The Blocks Problem, UVa 101) 例题 5-3 安迪的第一个字典(Andy’s First Dictionary, UVa 10815) 例题 5-4 反片语(Ananagrams, UVa 156) 例题 5-5 集合栈计算机(The SetStack Computer

weixin_44823889的博客 1222

第五章 C++与STL入门(例题篇:STL部分)--算法竞赛入门经典

第五章 C++与STL入门(例题篇:STL部分) 例题5-1:大理石在哪儿(UVa10474) P108 排序与检索 #include<cstdio> #include<algorithm> using namespace std; const int maxn = 10000; int main() { /*ios::sync_with_stdio(false);*/ ...

BooleanWater的博客 946

紫书ch5 STL初步

学了紫书一大半后回过头来看一下ch5,查漏补缺,主要是后面内容中时不时会出现“在本书第五章介绍过”的字段,然后一脸懵逼,现在就当来学习解惑了。 5.2.1 排序和检索 Uva 10474 大理石在哪儿 这道题主要可以用来熟悉一下algorithm头文件中的两个实用的函数sort和lower_bound sort函数详解(史上最完整QAQ) 关于lower_bound( )和upper...

fireflylane的博客 323

算法竞赛入门经典——C++与STL入门

算法竞赛入门经典——C++与STL入门 C++在string头文件里定义了string类型,直接支持流式读写。string有很多方便的函数和运算符,但速度有些慢。 考虑这样一个题目:输入数据的每行包含若干个(至少一个)以空格隔开的整数,输出每行中所有整数之和。如果只能使用字符与字符数组,一般由两种方案:一是使用getchar()边读边算,代码较短,但容易写错,并且相对较难理解;二是每次读取一行,然...

linjiayina的博客 792
上一篇: HDU-OJ 2003
下一篇: HDU-OJ 2004 成绩转换
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值