3.7---猫狗收容所(CC150)
解答的思路:建立一个queue放狗,一个queue放猫。
如下:
import java.util.*;
class Dog{
int time;
int value;
Dog(int a, int b){
time = a;
value = b;
}
}
class Cat{
int time;
int value;
Cat(int a, int b){
time = a;
value = b;
}
} public class CatDogAsylum { public static ArrayList<Integer> asylum(int[][] ope){
ArrayList<Integer> res = new ArrayList();
Queue<Dog> dog = new ArrayDeque();
Queue<Cat> cat = new ArrayDeque();
int time = 0;
for(int i = 0; i < ope.length; i++){ if(ope[i][0] == 1){//push if(ope[i][1] > 0){//dog
Dog tmp = new Dog(time++,ope[i][1]);
dog.add(tmp); }
else if(ope[i][1] < 0){//cat
Cat tmp = new Cat(time++,ope[i][1]);
cat.add(tmp);
}
} else if(ope[i][0] == 2){//pop
if(ope[i][1] == 0){
if(!dog.isEmpty() && ! cat.isEmpty()){
if(dog.peek().time < cat.peek().time){
res.add(dog.peek().value);
dog.poll();
}
else{
res.add(cat.peek().value);
cat.poll();
}
}
else if(!dog.isEmpty()){
res.add(dog.peek().value);
dog.poll();
}
else {
res.add(cat.peek().value);
cat.poll();
}
}
else if(ope[i][1] == 1){
if(!dog.isEmpty()){
res.add(dog.peek().value);
dog.poll();
}
}
else if(ope[i][1] == -1){
if(!cat.isEmpty()){
res.add(cat.peek().value);
cat.poll();
}
} } } return res; }
}
3.7---猫狗收容所(CC150)的更多相关文章
- 猫狗收容所 牛客网 程序员面试金典 C++
猫狗收容所 牛客网 程序员面试金典 C++ 题目描述 有家动物收容所只收留猫和狗,但有特殊的收养规则,收养人有两种收养方式,第一种为直接收养所有动物中最早进入收容所的,第二种为选择收养的动物类型(猫或 ...
- CC17:猫狗收容所
题目 有家动物收容所只收留猫和狗,但有特殊的收养规则,收养人有两种收养方式,第一种为直接收养所有动物中最早进入收容所的,第二种为选择收养的动物类型(猫或狗),并收养该种动物中最早进入收容所的. 给定一 ...
- Java中如何分析一个案列---猫狗案例为例
猫狗案例: 具体事务: 猫.狗 共性: 姓名.年龄.吃饭 分析:从具体到抽象 猫: 姓名.年龄--->成员变量 吃饭 ---> 成员方法 构造方法:无参.有参 狗: 姓名.年龄 ...
- java多态 -- 猫狗案列
我们用猫狗案例来表明在java中使用多态的好处: class Animal{ public Animal(){} public void eat(){ System.out.println(" ...
- 深度学习原理与框架-猫狗图像识别-卷积神经网络(代码) 1.cv2.resize(图片压缩) 2..get_shape()[1:4].num_elements(获得最后三维度之和) 3.saver.save(训练参数的保存) 4.tf.train.import_meta_graph(加载模型结构) 5.saver.restore(训练参数载入)
1.cv2.resize(image, (image_size, image_size), 0, 0, cv2.INTER_LINEAR) 参数说明:image表示输入图片,image_size表示变 ...
- 使用pytorch完成kaggle猫狗图像识别
kaggle是一个为开发商和数据科学家提供举办机器学习竞赛.托管数据库.编写和分享代码的平台,在这上面有非常多的好项目.好资源可供机器学习.深度学习爱好者学习之用.碰巧最近入门了一门非常的深度学习框架 ...
- 1.keras实现-->自己训练卷积模型实现猫狗二分类(CNN)
原数据集:包含 25000张猫狗图像,两个类别各有12500 新数据集:猫.狗 (照片大小不一样) 训练集:各1000个样本 验证集:各500个样本 测试集:各500个样本 1= 狗,0= 猫 # 将 ...
- Kaggle系列1:手把手教你用tensorflow建立卷积神经网络实现猫狗图像分类
去年研一的时候想做kaggle上的一道题目:猫狗分类,但是苦于对卷积神经网络一直没有很好的认识,现在把这篇文章的内容补上去.(部分代码参考网上的,我改变了卷积神经网络的网络结构,其实主要部分我加了一层 ...
- paddlepaddle实现猫狗分类
目录 1.预备工作 1.1 数据集准备 1.2 数据预处理 2.训练 2.1 模型 2.2 定义训练 2.3 训练 3.预测 4.参考文献 声明:这是我的个人学习笔记,大佬可以点评,指导,不喜勿喷.实 ...
- 猫狗识别——PyTorch
猫狗识别 数据集下载: 网盘链接:https://pan.baidu.com/s/1SlNAPf3NbgPyf93XluM7Fg 提取密码:hpn4 1. 要导入的包 import os import ...
随机推荐
- Maven打包可执行jar
参考文献:http://blog.csdn.net/xiao__gui/article/details/47341385 方法:使用assembly插件,生成的jar包名为xxx-jar-with-d ...
- centos6.5分区简易操作
fdisk /dev/sdb --->n--->p---->输入分区大小(回车就默认全部大小) mkfs.ext4 /dev/sdb1 mkdir /data 在根目录下新建data ...
- 重载new操作符
http://book.51cto.com/art/201202/317799.htm
- Mac 使用Sublime Text 3搭建java环境
运行效果 运行的时候会在桌面上生成一个 .class文件,可以通过配置文件将生成的.class文件删除. 参考: java环境配置:http://developer.51cto.com/art/201 ...
- (转载)iOS UILabel自定义行间距时获取高度
本文介绍一下自定义行间距的UILabel的高度如何获取,需要借助一下开源的UILabel控件:TTTAttributedLabel 附下载地址 https://github.com/TTTAttrib ...
- Camera
Unity摄像机Viewport使用 http://blog.sina.com.cn/s/blog_64ab3f630100y7e7.html http://blog.sina.com.cn/s/ ...
- 创建守护进程步骤与setsid() -- linux deamon进程
原创:http://www.cnblogs.com/mickole/p/3188321.html 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且 ...
- yii2嵌入微信公众号支付
原文地址:https://segmentfault.com/a/1190000005114556
- Centos6.5搭建java开发环境
一.安装jdk 1.查看Linux自带的JDK是否已安装 java –version 如果出现openjdk,最好还是先卸载掉openjdk,在安装sun公司的jdk. 2.查看jdk信息 rpm - ...
- 柱状堆积图Echarts
Map<String,Object> map = new HashMap<String, Object>(); //图例的千人.双百 HashMap<String, St ...