Class Solution
java.lang.Object
g2301_2400.s2327_number_of_people_aware_of_a_secret.Solution
2327 - Number of People Aware of a Secret.<p>Medium</p>
<p>On day <code>1</code>, one person discovers a secret.</p>
<p>You are given an integer <code>delay</code>, which means that each person will <strong>share</strong> the secret with a new person <strong>every day</strong> , starting from <code>delay</code> days after discovering the secret. You are also given an integer <code>forget</code>, which means that each person will <strong>forget</strong> the secret <code>forget</code> days after discovering it. A person <strong>cannot</strong> share the secret on the same day they forgot it, or on any day afterwards.</p>
<p>Given an integer <code>n</code>, return <em>the number of people who know the secret at the end of day</em> <code>n</code>. Since the answer may be very large, return it <strong>modulo</strong> <code>10<sup>9</sup> + 7</code>.</p>
<p><strong>Example 1:</strong></p>
<p><strong>Input:</strong> n = 6, delay = 2, forget = 4</p>
<p><strong>Output:</strong> 5</p>
<p><strong>Explanation:</strong></p>
<p>Day 1: Suppose the first person is named A. (1 person)</p>
<p>Day 2: A is the only person who knows the secret. (1 person)</p>
<p>Day 3: A shares the secret with a new person, B. (2 people)</p>
<p>Day 4: A shares the secret with a new person, C. (3 people)</p>
<p>Day 5: A forgets the secret, and B shares the secret with a new person, D. (3 people)</p>
<p>Day 6: B shares the secret with E, and C shares the secret with F. (5 people)</p>
<p><strong>Example 2:</strong></p>
<p><strong>Input:</strong> n = 4, delay = 1, forget = 3</p>
<p><strong>Output:</strong> 6</p>
<p><strong>Explanation:</strong></p>
<p>Day 1: The first person is named A. (1 person)</p>
<p>Day 2: A shares the secret with B. (2 people)</p>
<p>Day 3: A and B share the secret with 2 new people, C and D. (4 people)</p>
<p>Day 4: A forgets the secret. B, C, and D share the secret with 3 new people. (6 people)</p>
<p><strong>Constraints:</strong></p>
<ul>
<li><code>2 <= n <= 1000</code></li>
<li><code>1 <= delay < forget <= n</code></li>
</ul>
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Solution
public Solution()
-
-
Method Details
-
peopleAwareOfSecret
public int peopleAwareOfSecret(int n, int delay, int forget)
-