2018美團CodeM程式設計大賽初賽B輪 A題開關燈

2022-08-11 04:51:07 字數 1522 閱讀 9546

美團的辦公室一共有n層,每層有m個會議室,可以看成是乙個n*m的網格圖。工程師們每天的工作需要協作的地方很多,經常要到會議室開會解決各種問題。公司是提倡勤儉節約的,因此每次會議室只在使用時才開燈。

當乙個工程師進入會議室時,假設沒有其他人,他會把燈開啟。

當乙個工程師離開會議室時,假設沒有其他人,他會把燈關掉。

現在給出一系列工程師進出會議室的記錄,請問在此過程中,最多有多少會議室的燈是亮著的?請輸出亮燈數最多時,每個會議室的明暗狀態。

第一行三個整數n,m,k,分別表示總行數、總列數、工程師的進出記錄數。

接下來k行,每行三個整數和乙個字串x, y, z, t,表示t時間點有一條記錄,z=0表示x行y列的會議室有個工程師進入會議室了,z=1表示x行y列的房間有個工程師離開會議室了。

假設一開始所有會議室裡都是沒人的。

1 <= n, m <= 500

1 <= k <= 100,000

t是hh:mm:ss.sss的形式,其中hh表示小時,mm表示分鐘,ss.sss表示秒數。(因為工程師有非常強大的時間觀念,所以對於他們來說,時間是精確到0.001秒的)

資料保證t在18:00:00.000到23:59:59.999之間,且沒有兩條記錄的時間是完全一樣的。資料保證記錄以t公升序的形式給出。

1 <= x <= n

1 <= y <= m

z∈資料保證沒有從空會議室離開的情況。

資料保證所有的時間格式合法。hh,mm均為長度為2的字串,ss.sss為長度為6的字串。

輸出n行每行m個整數,第i行第j列表示在亮燈數最多的時刻,第i行第j列的會議室的亮燈情況,1表示亮著,0表示沒亮。

如果存在多次亮燈數最多的時刻,輸出最後一次時的情況。

示例1

2 2 4

1 1 0 18:00:00.000

1 1 1 20:00:00.000

1 1 0 18:00:01.000

1 2 0 18:00:02.000

11

00

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

struct t

t(int a,int b,int c,int d)

int h;//小時

int m;//分鐘

int s;//秒

int ms;//毫秒

int x;//行數

int y;//列數

int z;//表示進入還是離開

bool operator<(struct t&t2)

sort(a,a+k);

int cnt=0;

for(int i=0;i=ma)

}for(int i=1;i<=n;i++)

cout<

CodeM美團點評程式設計大賽A輪 C 倒水

程式設計題 倒水 時間限制 1秒 空間限制 32768k 有乙個大水缸,裡面水的溫度為t單位,體積為c公升。另有n杯水 假設每個杯子的容量是無限的 每杯水的溫度為t i 單位,體積為c i 公升。現在要把大水缸的水倒入n杯水中,使得n杯水的溫度相同,請問這可能嗎?並求出可行的最高溫度,保留4位小數。...

CodeM美團點評程式設計大賽A輪 C 倒水

倒水 時間限制 1秒 空間限制 32768k 有乙個大水缸,裡面水的溫度為t單位,體積為c公升。另有n杯水 假設每個杯子的容量是無限的 每杯水的溫度為t i 單位,體積為c i 公升。現在要把大水缸的水倒入n杯水中,使得n杯水的溫度相同,請問這可能嗎?並求出可行的最高溫度,保留4位小數。注意 一杯溫...

CodeM 2017美團點評程式設計大賽資格賽

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32m,其他語言64m 美團外賣的品牌代言人袋鼠先生最近正在進行 研究。他有兩段音訊,每段音訊是乙個表示音高的序列。現在袋鼠先生想要在第二段音訊中找出與第一段音訊最相近的部分。具體地說,就是在第二段音訊中找到乙個長度和第一段音訊相等且是連續的子...