用int型作为指针实现
猫狗收养所,只有猫和狗
第一个数是1表示是在输入
* 操作数如果是整数,表示是狗的编号
* 操作数如果是负数,表示是猫的编号

第二个数是2表示被领走
* 操作数如果是0,表示领走所有猫狗中最先进来的那个
* 操作数是1,表示领走狗中最先进来的那个
* 操作数是-1,表示领走猫中最先进来的那个
输入一堆操作
按照顺序输出被领走的小动物的编号

#include <vector>
#include <iostream>
using namespace std;
vector< pair<int,int> > v,store;
int dogreflesh(){ //return the first dogfor (int i = 0; i < v.size(); ++i) {if (v[i].second > 0) {return i;}}return -1;
}
int catreflesh(){for (int i = 0; i < v.size(); ++i) {if (v[i].second < 0) {return i;}}return -1;
}
int main(){int dog, cat;dog = cat = -1;int oper, open;while (cin >> oper >> open) {if (oper == 1) {if (open == 0) {continue;} else if (open > 0){dog = v.size() - 1;} else {cat = v.size() - 1;}v.push_back({oper, open});} else if (oper == 2){if (open == 0 && v.size() > 0) {store.push_back(v[0]);v.erase(v.begin());dog = dogreflesh();cat = catreflesh();} else if (open == 1 && dog >= 0) {store.push_back(v[dog]);v.erase(v.begin() + dog);dog = dogreflesh();} else if (open == -1 && cat >= 0) {store.push_back(v[cat]);v.erase(v.begin() + cat);cat = catreflesh();}}}   for (int i = 0; i < store.size(); ++i) {cout << store[i].second<<" ";}
}

下面是测试输入数据

1 1
1 -1
2 0
2 -1

输入结果是 1, -1

猫狗收养所问题(指针模拟)相关推荐

  1. 程序员面试金典——3.7猫狗收养所

    Solution1:普通思路 普通思路就挺好的 class CatDogAsylum { public:vector<int> asylum(vector<vector<int ...

  2. java基于微信小程序的流浪猫狗动物收养系统 uniapp 小程序

    随着迅速的发展,宠物饲养也较以前发生很大的变化,社区流浪猫狗救助网站系统以其独有的优势脱颖而出."社区流浪猫狗救助网站"是以JAVA程序设计语言课为基础的设计出适合社区流浪猫狗救助 ...

  3. 算法练习day8——190326(猫狗队列、转圈打印矩阵、旋转正方形矩阵、反转单向双向链表、数N的加法组合)

    1.猫狗队列 [题目] 宠物. 狗和猫的类如下: public class Pet {private String type;public Pet(String type) {this.type = ...

  4. Java软件研发工程师转行之深度学习(Deep Learning)进阶:手写数字识别+人脸识别+图像中物体分类+视频分类+图像与文字特征+猫狗分类

    本文适合于对机器学习和数据挖掘有所了解,想深入研究深度学习的读者 1.对概率基本概率有所了解 2.具有微积分和线性代数的基本知识 3.有一定的编程基础(Python) Java软件研发工程师转行之深度 ...

  5. 流浪宠物救助网站前端页面_全国爱心人士齐聚鞍山 救助流浪猫狗

    入冬之后,流浪猫狗的"吃饭问题"成了众多爱心人士的牵挂.12日上午,来自全国各地的20余位爱心人士,来到宁远镇张忠堡村一流浪猫狗救助站,将价值7000余元的宠物用品捐赠给救助站. ...

  6. 基于ssm流浪猫狗|流浪狗宠物救助网站

    <ssm流浪猫狗救助网站> 该项目采用技术: 后端采用ssm框架 前端采用了jsp+html+css+bootstrap框架 mysql数据库+tomcat服务器,项目含有源码.文档.配套 ...

  7. [附源码]Python计算机毕业设计SSM流浪猫狗救助站(程序+LW)

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  8. 神经网络学习小记录19——微调VGG分类模型训练自己的数据(猫狗数据集)

    神经网络学习小记录19--微调VGG分类模型训练自己的数据(猫狗数据集) 注意事项 学习前言 什么是VGG16模型 VGG模型的复杂程度 训练前准备 1.数据集处理 2.创建Keras的VGG模型 3 ...

  9. Java+SSM流浪猫狗救助领养网站(含源码+论文+答辩PPT等)

    项目功能简介: 该项目采用技术: 后端采用SSM框架 前端采用了html+css+bootstrap框架 MySQL数据库+Tomcat服务器,项目含有源码.文档.配套开发软件.软件安装教程.项目发布 ...

最新文章

  1. 归一化互相关Normalization cross correlation (NCC)
  2. AI一分钟 | 富士康押宝人工智能,将投资21亿元用于AI研发
  3. (转)类库 框架 模式
  4. 2021 RoboCom 世界机器人开发者大赛-本科组(初赛)【完结】
  5. dubbo使用遇到的问题
  6. 编码 括号_Java编码规范整理汇总
  7. 基于javaweb jsp+servlet学生宿舍管理系统设计和实现
  8. 科研|我最煎熬的学术时刻,是耗时3年完成了一篇论文
  9. g++是什么_飞度车主开奔驰G级的一天,会是什么样的体验?
  10. A. 抽象类和抽象方法(abstract)
  11. CSS小技巧--文字对齐
  12. 1.自编码器(keras+mnist)
  13. PS为美女换服装颜色及换头发颜色
  14. 学生管理系统IPO图_高校学生考勤管理系统
  15. 推广的euclid_欧几里得(Euclid)与拓展的欧几里得算法
  16. uni-app实现简单上传图片Demo(不考虑小程序,只实现网页和App)
  17. 【VBS】vbs鼠标方法——模拟鼠标按键
  18. vue :to设置路由导航的用法
  19. 【Maxwell】MySQL数据监听
  20. abb机器人指令手册_ABB机器人的程序结构与模块属性

热门文章

  1. 在线html表格设计器,6款优秀的在线表单设计器
  2. java标识符与关键字_4、Java标识符和关键字
  3. mysql5.7审计功能开启_MySQL5.7审计功能windows系统
  4. [Python]数据类型、常量、变量和运算符(未完待续)
  5. 学习笔记第二十五节课
  6. PHP网站安装程序的原理及代码
  7. MVC4做网站后台:栏目管理1、添加栏目
  8. javascript调用在有母版的页面中注意的几点记录
  9. C#之 VS2008 之 Extension Methods
  10. 夏日炎炎,请照顾好你的电脑