猫狗收养所问题(指针模拟)
用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
猫狗收养所问题(指针模拟)相关推荐
- 程序员面试金典——3.7猫狗收养所
Solution1:普通思路 普通思路就挺好的 class CatDogAsylum { public:vector<int> asylum(vector<vector<int ...
- java基于微信小程序的流浪猫狗动物收养系统 uniapp 小程序
随着迅速的发展,宠物饲养也较以前发生很大的变化,社区流浪猫狗救助网站系统以其独有的优势脱颖而出."社区流浪猫狗救助网站"是以JAVA程序设计语言课为基础的设计出适合社区流浪猫狗救助 ...
- 算法练习day8——190326(猫狗队列、转圈打印矩阵、旋转正方形矩阵、反转单向双向链表、数N的加法组合)
1.猫狗队列 [题目] 宠物. 狗和猫的类如下: public class Pet {private String type;public Pet(String type) {this.type = ...
- Java软件研发工程师转行之深度学习(Deep Learning)进阶:手写数字识别+人脸识别+图像中物体分类+视频分类+图像与文字特征+猫狗分类
本文适合于对机器学习和数据挖掘有所了解,想深入研究深度学习的读者 1.对概率基本概率有所了解 2.具有微积分和线性代数的基本知识 3.有一定的编程基础(Python) Java软件研发工程师转行之深度 ...
- 流浪宠物救助网站前端页面_全国爱心人士齐聚鞍山 救助流浪猫狗
入冬之后,流浪猫狗的"吃饭问题"成了众多爱心人士的牵挂.12日上午,来自全国各地的20余位爱心人士,来到宁远镇张忠堡村一流浪猫狗救助站,将价值7000余元的宠物用品捐赠给救助站. ...
- 基于ssm流浪猫狗|流浪狗宠物救助网站
<ssm流浪猫狗救助网站> 该项目采用技术: 后端采用ssm框架 前端采用了jsp+html+css+bootstrap框架 mysql数据库+tomcat服务器,项目含有源码.文档.配套 ...
- [附源码]Python计算机毕业设计SSM流浪猫狗救助站(程序+LW)
项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- 神经网络学习小记录19——微调VGG分类模型训练自己的数据(猫狗数据集)
神经网络学习小记录19--微调VGG分类模型训练自己的数据(猫狗数据集) 注意事项 学习前言 什么是VGG16模型 VGG模型的复杂程度 训练前准备 1.数据集处理 2.创建Keras的VGG模型 3 ...
- Java+SSM流浪猫狗救助领养网站(含源码+论文+答辩PPT等)
项目功能简介: 该项目采用技术: 后端采用SSM框架 前端采用了html+css+bootstrap框架 MySQL数据库+Tomcat服务器,项目含有源码.文档.配套开发软件.软件安装教程.项目发布 ...
最新文章
- 归一化互相关Normalization cross correlation (NCC)
- AI一分钟 | 富士康押宝人工智能,将投资21亿元用于AI研发
- (转)类库 框架 模式
- 2021 RoboCom 世界机器人开发者大赛-本科组(初赛)【完结】
- dubbo使用遇到的问题
- 编码 括号_Java编码规范整理汇总
- 基于javaweb jsp+servlet学生宿舍管理系统设计和实现
- 科研|我最煎熬的学术时刻,是耗时3年完成了一篇论文
- g++是什么_飞度车主开奔驰G级的一天,会是什么样的体验?
- A. 抽象类和抽象方法(abstract)
- CSS小技巧--文字对齐
- 1.自编码器(keras+mnist)
- PS为美女换服装颜色及换头发颜色
- 学生管理系统IPO图_高校学生考勤管理系统
- 推广的euclid_欧几里得(Euclid)与拓展的欧几里得算法
- uni-app实现简单上传图片Demo(不考虑小程序,只实现网页和App)
- 【VBS】vbs鼠标方法——模拟鼠标按键
- vue :to设置路由导航的用法
- 【Maxwell】MySQL数据监听
- abb机器人指令手册_ABB机器人的程序结构与模块属性