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

门户网站开发建设成本明细怎样建立个人网站?

门户网站开发建设成本明细,怎样建立个人网站?,建立传媒公司网站,辅助教学网站开发技术讨论1. 题目描述 您需要实现一个功能#xff0c;快速找到客户想要的酒店房间。 在系统中注册的酒店数量N#xff0c;最多为1000家。 酒店ID的值介于1和N之间。这些值彼此不同。 每家旅馆最多有100个房间。 每个房间的ID值介于1和100000之间。给定值彼此不同。 #xff08;但是快速找到客户想要的酒店房间。 在系统中注册的酒店数量N最多为1000家。 酒店ID的值介于1和N之间。这些值彼此不同。 每家旅馆最多有100个房间。 每个房间的ID值介于1和100000之间。给定值彼此不同。 但是酒店ID和房间ID的值可以相同。每个房间都有以下信息: Region (1 ~ 10) Number of Beds (2 ~ 10) Room Type (1 ~ 4) View Type (1 ~ 4) Initial Price (10,000 ~ 20,000)酒店客房搜索系统会返回与客户选择的过滤器选项匹配的房间中最便宜的房间。 客户输入的信息如下: Check-in Date (1 ~ 9,999) Check-out Date (Check-in Date 1 ~ 10,000) Region (1 ~ 10) Number of Beds (2 ~ 10) Room Type (1 ~ 4) View Type (1 ~ 4)请实现以下API void init(int N, int mRoomCnt[]) 此函数在每个测试用例开始时调用一次。 参数 N酒店数量(1 ≤ N≤ 1,000) mRoomCnt[]每个酒店的客房数量。该值大于或等于1但最多为100。 mRoomCnt[k]是酒店ID为k1的酒店的房间数。(0 ≤ k ≤ N-1)void addRoom(int mHotelID, int mRoomID, int mRoomInfo[]) 此功能可在酒店中添加新房间。 将添加房间的酒店ID的值为mHotelID。 要添加的房间ID的值为mRoomID。 mRoomInfo是关于将添加的房间的信息。 mRoomInfo是一个长度为5的数组。每个索引包含以下值。 [0]Region [1]Number of Beds [2]Room Type [3]View Type [4]Price 每个阵列的值满足本文所述的约束。 保证要添加的房间数量不超过从init()传递的房间数量。 参数 mHotelID将添加房间的酒店ID1≤ mHotelID≤ N mRoomID房间ID1≤ 米隆≤ 100,000 ) mRoomInfo房间信息int findRoom(int mFilter[]) 此功能用于查找和预订房间。 mFilter是一个包含筛选器选项的数组。 [0]Check-in Date [1]Check-out Date [2]Region [3]Number of Beds [4]Room Type [5]View Type 每个阵列的值满足本文所述的约束。 您不能预订从入住日期到退房日期已经被预订的房间。 但是其他客户也可以在退房日期入住。 在匹配过滤器选项的房间中预订最便宜的房间。 价格相同时选择ID值最小的房间。 此函数返回已预订房间的ID值。 当没有可预订的房间时此函数返回-1。 参数 mFilter房间的过滤器选项 Return 已预订房间的ID值int riseCosts(int mHotelID) 该功能将酒店所有房间的价格提高10%。 计算时删除小数。例如房价15374提高10%15374 1537 16911 参数 mHotelID价格上涨的酒店ID1≤ mHotelID≤ N Return 该酒店所有房间的价格总和 2. api调用次数 [Constraints] 1. N, the number of hotels, is 1,000 at maximum. 2. init() is called once in the very beginning of each test case. 3. addRoom() is called all at once after init() and is no longer called after findRoom() or riseCosts() is called. 4. The number of rooms in each hotel is 100 at most. 5. findRoom() is called up to 10,000 times. 6. riseCosts() is called up to 500 times. 3. 单个测试数据 1 100 3 2 6 10 100 1 1 2 2 2 1 14629 100 1 2 2 3 1 2 10203 100 2 3 2 3 1 1 15374 100 2 4 1 2 2 1 10795 100 2 5 2 2 1 2 17701 100 2 6 1 3 2 2 13757 100 2 7 1 3 1 2 13569 100 2 8 1 3 2 2 17424 100 3 9 1 3 2 1 18267 100 3 10 2 3 1 2 11378 100 3 11 1 3 1 1 11800 100 3 12 2 3 2 2 16613 100 3 13 1 3 2 1 13157 100 3 14 2 3 1 2 10064 100 3 15 1 3 2 1 12999 100 3 16 1 3 1 2 13642 100 3 17 2 2 2 2 14388 100 3 18 2 2 2 2 16089 200 7 11 2 3 1 2 14 200 4 9 2 3 2 1 -1 200 12 13 2 3 1 2 14 200 21 25 1 2 2 2 -1 200 21 24 2 2 1 2 5 200 9 13 1 2 1 2 -1 300 2 97479 200 27 31 1 2 2 2 -1 300 2 107225 200 16 17 1 3 2 2 6 200 8 11 2 3 1 2 2 200 18 20 2 2 1 2 5 200 9 10 2 3 2 1 -1 200 22 27 2 3 2 2 12 200 27 31 1 3 1 1 11 200 24 25 1 3 1 2 16 300 3 152231 200 4 7 1 2 2 1 4 200 9 13 2 2 1 1 -1 200 14 17 2 2 1 1 -1 400 4. 主类 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.StringTokenizer;class Solution {private static UserSolution user new UserSolution();private static int roomCnt[] new int[1005];private static final int ADDROOM 100;private static final int FINDROOM 200;private static final int RISECOSTS 300;private static final int END 400;private static int hotelID 0;private static int roomID 0;private static int roomInfo[] new int[5];private static int filterInfo[] new int[6];private static int run(BufferedReader br, int _score) throws Exception{int score _score;StringTokenizer st new StringTokenizer(br.readLine(), );int n Integer.parseInt(st.nextToken());for (int i 0; i n; i)roomCnt[i] Integer.parseInt(st.nextToken());user.init(n, roomCnt);int cmd, user_ans, correct_ans;for(int q 0;;q){st new StringTokenizer(br.readLine(), );cmd Integer.parseInt(st.nextToken());switch (cmd){case ADDROOM:hotelID Integer.parseInt(st.nextToken());roomID Integer.parseInt(st.nextToken());for (int i 0; i 5; i)roomInfo[i] Integer.parseInt(st.nextToken());user.addRoom(hotelID, roomID, roomInfo);break;case FINDROOM:for (int i 0; i 6; i)filterInfo[i] Integer.parseInt(st.nextToken());user_ans user.findRoom(filterInfo);correct_ans Integer.parseInt(st.nextToken());if (user_ans ! correct_ans)score 0;break;case RISECOSTS:hotelID Integer.parseInt(st.nextToken());user_ans user.riseCosts(hotelID);correct_ans Integer.parseInt(st.nextToken());if (user_ans ! correct_ans)score 0;break;case END:return score;default:score 0;break;}}}public static void main(String[] args) throws Exception { // System.setIn(new java.io.FileInputStream(res/sample_input.txt));BufferedReader br new BufferedReader(new InputStreamReader(System.in));StringTokenizer st new StringTokenizer(br.readLine(), );int tc Integer.parseInt(st.nextToken());int score Integer.parseInt(st.nextToken());for (int t 1; t tc; t){System.out.println(# t run(br, score));}br.close();}} 5. 需要实现的api class UserSolution {void init(int N, int mRoomCnt[]){}void addRoom(int mHotelID, int mRoomID, int mRoomInfo[]){}int findRoom(int mFilter[]){return 0;}int riseCosts(int mHotelID){return 0;} } 6. 目前实现的代码10s多 import java.util.ArrayList; import java.util.Comparator; import java.util.HashMap; import java.util.List; import java.util.TreeSet;class UserSolution {class Hotel {int nums;TreeSetRoom queue new TreeSet(new MyComparator());Hotel(int nums) {this.nums nums;}}class Room {int roomId;int reigon;int beds;int roomType;int viewType;int price;ListUserDate userDate new ArrayList();Room (int roomId, int reigon, int beds, int roomType, int viewType, int price) {this.roomId roomId;this.reigon reigon;this.beds beds;this.roomType roomType;this.viewType viewType;this.price price;}}class UserDate {int start;int end;UserDate(int start, int end) {this.start start;this.end end;}}class MyComparator implements ComparatorRoom {Overridepublic int compare(UserSolution.Room o1, UserSolution.Room o2) {if (o1.price o2.price) {return o1.roomId - o2.roomId;}return o1.price - o2.price;}}HashMapInteger, Room roomMap new HashMap();Hotel[] hotels;int n;void init(int N, int mRoomCnt[]){n N 1;hotels new Hotel[n];roomMap.clear();for (int i 0; i n; i) {hotels[i] new Hotel(mRoomCnt[i]);}}void addRoom(int mHotelID, int mRoomID, int mRoomInfo[]){Room room new Room(mRoomID, mRoomInfo[0], mRoomInfo[1], mRoomInfo[2], mRoomInfo[3], mRoomInfo[4]);roomMap.put(mRoomID, room);hotels[mHotelID].queue.add(room);}int findRoom(int mFilter[]){int findId -1;int minPrice Integer.MAX_VALUE;for (Hotel hotel : hotels) {TreeSetRoom queue hotel.queue;for (Room room : queue) {if (check(room, mFilter)) {if (room.price minPrice) {minPrice room.price;findId room.roomId;}break;}}}if (findId ! -1) {roomMap.get(findId).userDate.add(new UserDate(mFilter[0], mFilter[1]));}return findId;}boolean check(Room room, int[] mFilter) {if (mFilter[2] ! room.reigon) {return false;}if (mFilter[3] ! room.beds) {return false;}if (mFilter[4] ! room.roomType) {return false;}if (mFilter[5] ! room.viewType) {return false;}for (UserDate userDate : room.userDate) {if (mFilter[0] userDate.start mFilter[1] userDate.end) {return false;}if (mFilter[0] userDate.start mFilter[0] userDate.end mFilter[1] userDate.end) {return false;}if (mFilter[0] userDate.start mFilter[1] userDate.start mFilter[1] userDate.end) {return false;}if (mFilter[0] userDate.start mFilter[1] userDate.end) {return false;}}return true;}int riseCosts(int mHotelID){int maxValue 0;TreeSetRoom newQueue new TreeSet(new MyComparator());for (Room room : hotels[mHotelID].queue) {Room newRoom room;newRoom.price room.price * 0.1;newQueue.add(newRoom);maxValue room.price;}hotels[mHotelID].queue.clear();hotels[mHotelID].queue newQueue;return maxValue;}}
http://www.pierceye.com/news/353002/

相关文章:

  • 建网站海外英文建站
  • 学网站开发网页制作苏州模板建站哪家好
  • 音乐网站建设怎么上传音乐易点租电脑租赁官网
  • 做足球网站前景一个网站源码值多少钱
  • 成都网站排名优化公司上海创意网站建设
  • 贵阳市住房城乡建设局八大员网站wordpress 输出 文章时间
  • 那个装修公司的网站做的好想创业去哪里找项目
  • 公选课网页制作与网站建设网页游戏平台十大排名
  • 无锡锡牛网站建设网站倒计时
  • 南通做外贸网站网站建设培训四川
  • 微小店适合卖做分类网站吗手机开发者网站
  • 广州建企业网站网页设计是啥意思
  • wap手机网站建设刀模 东莞网站建设
  • 怎样做网站的外链做推广优化的网站有哪些内容
  • 永嘉规划建设局网站备案个人网站做淘宝客
  • 枣庄网站建设电话网站怎么做 凡科
  • 视频网站点击链接怎么做的宁波网站建设接单
  • 网站报价表怎么做wordpress 横向扩展
  • 溧阳网站建设哪家好网站建设的教程
  • 360怎么做网站做pop网站
  • 网站建设方案书2000字中国正国级名单
  • 企业网站的布局类型网站移动页面怎么做的
  • 人是用什么做的视频网站吗wordpress如何设水印图片
  • 蛋糕店的网站建设咋写深圳市宝安区邮政编码
  • 东莞横沥网站建设杭州网站制作排名
  • 百合怎么做网站网站开发语
  • 网站搭建哪里找最好天津市建设工程信息网站
  • 有免费注册网站吗做教育网站还挣钱吗
  • 网站做百度推广需要哪些条件店铺推广软文范例
  • 台州企业网站搭建特点迅美网站建设