File tree Expand file tree Collapse file tree 3 files changed +91
-0
lines changed
solution/1800-1899/1845.Seat Reservation Manager Expand file tree Collapse file tree 3 files changed +91
-0
lines changed Original file line number Diff line number Diff line change @@ -197,6 +197,38 @@ func (h *hp) Pop() interface{} {
197197 */
198198```
199199
200+ ### ** C#**
201+
202+ ``` cs
203+ public class SeatManager {
204+ private SortedSet <int > availableSeats ;
205+
206+ public SeatManager (int n ) {
207+ availableSeats = new SortedSet <int >();
208+ for (int i = 1 ; i <= n ; i ++ ) {
209+ availableSeats .Add (i );
210+ }
211+ }
212+
213+ public int Reserve () {
214+ int reservedSeat = availableSeats .Min ;
215+ availableSeats .Remove (reservedSeat );
216+ return reservedSeat ;
217+ }
218+
219+ public void Unreserve (int seatNumber ) {
220+ availableSeats .Add (seatNumber );
221+ }
222+ }
223+
224+ /**
225+ * Your SeatManager object will be instantiated and called as such:
226+ * SeatManager obj = new SeatManager(n);
227+ * int param_1 = obj.Reserve();
228+ * obj.Unreserve(seatNumber);
229+ */
230+ ```
231+
200232### ** ...**
201233
202234```
Original file line number Diff line number Diff line change @@ -176,6 +176,38 @@ func (h *hp) Pop() interface{} {
176176 */
177177```
178178
179+ ### ** C#**
180+
181+ ``` cs
182+ public class SeatManager {
183+ private SortedSet <int > availableSeats ;
184+
185+ public SeatManager (int n ) {
186+ availableSeats = new SortedSet <int >();
187+ for (int i = 1 ; i <= n ; i ++ ) {
188+ availableSeats .Add (i );
189+ }
190+ }
191+
192+ public int Reserve () {
193+ int reservedSeat = availableSeats .Min ;
194+ availableSeats .Remove (reservedSeat );
195+ return reservedSeat ;
196+ }
197+
198+ public void Unreserve (int seatNumber ) {
199+ availableSeats .Add (seatNumber );
200+ }
201+ }
202+
203+ /**
204+ * Your SeatManager object will be instantiated and called as such:
205+ * SeatManager obj = new SeatManager(n);
206+ * int param_1 = obj.Reserve();
207+ * obj.Unreserve(seatNumber);
208+ */
209+ ```
210+
179211### ** ...**
180212
181213```
Original file line number Diff line number Diff line change 1+ public class SeatManager {
2+ private SortedSet < int > availableSeats ;
3+
4+ public SeatManager ( int n ) {
5+ availableSeats = new SortedSet < int > ( ) ;
6+ for ( int i = 1 ; i <= n ; i ++ ) {
7+ availableSeats . Add ( i ) ;
8+ }
9+ }
10+
11+ public int Reserve ( ) {
12+ int reservedSeat = availableSeats . Min ;
13+ availableSeats . Remove ( reservedSeat ) ;
14+ return reservedSeat ;
15+ }
16+
17+ public void Unreserve ( int seatNumber ) {
18+ availableSeats . Add ( seatNumber ) ;
19+ }
20+ }
21+
22+ /**
23+ * Your SeatManager object will be instantiated and called as such:
24+ * SeatManager obj = new SeatManager(n);
25+ * int param_1 = obj.Reserve();
26+ * obj.Unreserve(seatNumber);
27+ */
You can’t perform that action at this time.
0 commit comments