mirror of
https://gitee.com/coder-xiaomo/leetcode-problemset
synced 2025-01-10 18:48:13 +08:00
40 lines
1.9 KiB
HTML
40 lines
1.9 KiB
HTML
<p>给你一个整数数据流,请你实现一个数据结构,检查数据流中最后 <code>k</code> 个整数是否 <strong>等于</strong> 给定值 <code>value</code> 。</p>
|
||
|
||
<p>请你实现 <strong>DataStream</strong> 类:</p>
|
||
|
||
<ul>
|
||
<li><code>DataStream(int value, int k)</code> 用两个整数 <code>value</code> 和 <code>k</code> 初始化一个空的整数数据流。</li>
|
||
<li><code>boolean consec(int num)</code> 将 <code>num</code> 添加到整数数据流。如果后 <code>k</code> 个整数都等于 <code>value</code> ,返回 <code>true</code> ,否则返回 <code>false</code> 。如果少于 <code>k</code> 个整数,条件不满足,所以也返回 <code>false</code> 。</li>
|
||
</ul>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>示例 1:</strong></p>
|
||
|
||
<pre>
|
||
<strong>输入:</strong>
|
||
["DataStream", "consec", "consec", "consec", "consec"]
|
||
[[4, 3], [4], [4], [4], [3]]
|
||
<strong>输出:</strong>
|
||
[null, false, false, true, false]
|
||
|
||
<strong>解释:</strong>
|
||
DataStream dataStream = new DataStream(4, 3); // value = 4, k = 3
|
||
dataStream.consec(4); // 数据流中只有 1 个整数,所以返回 False 。
|
||
dataStream.consec(4); // 数据流中只有 2 个整数
|
||
// 由于 2 小于 k ,返回 False 。
|
||
dataStream.consec(4); // 数据流最后 3 个整数都等于 value, 所以返回 True 。
|
||
dataStream.consec(3); // 最后 k 个整数分别是 [4,4,3] 。
|
||
// 由于 3 不等于 value ,返回 False 。
|
||
</pre>
|
||
|
||
<p> </p>
|
||
|
||
<p><strong>提示:</strong></p>
|
||
|
||
<ul>
|
||
<li><code>1 <= value, num <= 10<sup>9</sup></code></li>
|
||
<li><code>1 <= k <= 10<sup>5</sup></code></li>
|
||
<li>至多调用 <code>consec</code> 次数为 <code>10<sup>5</sup></code> 次。</li>
|
||
</ul>
|