File tree 3 files changed +79
-0
lines changed
solution/2000-2099/2073.Time Needed to Buy Tickets
3 files changed +79
-0
lines changed Original file line number Diff line number Diff line change @@ -91,6 +91,34 @@ class Solution {
91
91
}
92
92
```
93
93
94
+ ### ** TypeScript**
95
+
96
+ ``` ts
97
+ function timeRequiredToBuy(tickets : number [], k : number ): number {
98
+ const n = tickets .length ;
99
+ let target = tickets [k ] - 1 ;
100
+ let ans = 0 ;
101
+ // round1
102
+ for (let i = 0 ; i < n ; i ++ ) {
103
+ let num = tickets [i ];
104
+ if (num <= target ) {
105
+ ans += num ;
106
+ tickets [i ] = 0 ;
107
+ } else {
108
+ ans += target ;
109
+ tickets [i ] -= target ;
110
+ }
111
+ }
112
+
113
+ // round2
114
+ for (let i = 0 ; i <= k ; i ++ ) {
115
+ let num = tickets [i ];
116
+ ans += (num > 0 ? 1 : 0 );
117
+ }
118
+ return ans ;
119
+ };
120
+ ```
121
+
94
122
### ** C++**
95
123
96
124
``` cpp
Original file line number Diff line number Diff line change @@ -82,6 +82,34 @@ class Solution {
82
82
}
83
83
```
84
84
85
+ ### ** TypeScript**
86
+
87
+ ``` ts
88
+ function timeRequiredToBuy(tickets : number [], k : number ): number {
89
+ const n = tickets .length ;
90
+ let target = tickets [k ] - 1 ;
91
+ let ans = 0 ;
92
+ // round1
93
+ for (let i = 0 ; i < n ; i ++ ) {
94
+ let num = tickets [i ];
95
+ if (num <= target ) {
96
+ ans += num ;
97
+ tickets [i ] = 0 ;
98
+ } else {
99
+ ans += target ;
100
+ tickets [i ] -= target ;
101
+ }
102
+ }
103
+
104
+ // round2
105
+ for (let i = 0 ; i <= k ; i ++ ) {
106
+ let num = tickets [i ];
107
+ ans += (num > 0 ? 1 : 0 );
108
+ }
109
+ return ans ;
110
+ };
111
+ ```
112
+
85
113
### ** C++**
86
114
87
115
``` cpp
Original file line number Diff line number Diff line change
1
+ function timeRequiredToBuy ( tickets : number [ ] , k : number ) : number {
2
+ const n = tickets . length ;
3
+ let target = tickets [ k ] - 1 ;
4
+ let ans = 0 ;
5
+ // round1
6
+ for ( let i = 0 ; i < n ; i ++ ) {
7
+ let num = tickets [ i ] ;
8
+ if ( num <= target ) {
9
+ ans += num ;
10
+ tickets [ i ] = 0 ;
11
+ } else {
12
+ ans += target ;
13
+ tickets [ i ] -= target ;
14
+ }
15
+ }
16
+
17
+ // round2
18
+ for ( let i = 0 ; i <= k ; i ++ ) {
19
+ let num = tickets [ i ] ;
20
+ ans += ( num > 0 ? 1 : 0 ) ;
21
+ }
22
+ return ans ;
23
+ } ;
You can’t perform that action at this time.
0 commit comments