EasyNo. 1809LeetCode Premium
Ad-Free Sessions — LeetCode 1809 Python Solution
- Topics
- Database
- Reading time
- 3 min
- Source
- leetcode.com
Table schema
Table: Playback +-------------+------+ | Column Name | Type | +-------------+------+ | session_id | int | | customer_id | int | | start_time | int | | end_time | int | +-------------+------+ session_id is the column with unique values for this table. customer_id is the ID of the customer watching this session.Example
+-------------+------+
| Column Name | Type |
+-------------+------+
| session_id | int |
| customer_id | int |
| start_time | int |
| end_time | int |
+-------------+------+
session_id is the column with unique values for this table.
customer_id is the ID of the customer watching this session.
The session runs during the inclusive interval between start_time and end_time.
It is guaranteed that start_time <= end_time and that two sessions for the same customer do not intersect.Python solution
import duckdb
import pandas as pd
def solution(playback: pd.DataFrame, ads: pd.DataFrame) -> pd.DataFrame:
con = duckdb.connect()
con.register("Playback", playback)
con.register("Ads", ads)
return con.execute("""SELECT session_id
FROM Playback
WHERE
session_id NOT IN (
SELECT session_id
FROM
Playback AS p
JOIN Ads AS a
ON p.customer_id = a.customer_id AND a.timestamp BETWEEN p.start_time AND p.end_time
);""").df()Complexity
- Time
- O(n log n)(typical)
- Space · auxiliary
- O(n)
Related problems
| No. | Problem | Difficulty |
|---|---|---|
| 0175 | Combine Two Tables | Easy |
| 0176 | Second Highest Salary | Medium |
| 0177 | Nth Highest Salary | Medium |
| 0178 | Rank Scores | Medium |
| 0180 | Consecutive Numbers | Medium |
| 0181 | Employees Earning More Than Their Managers | Easy |
Frequently asked questions
- How hard is LeetCode 1809. Ad-Free Sessions?
LeetCode 1809. Ad-Free Sessions is rated Easy on LeetCode.
- What topics does LeetCode 1809. Ad-Free Sessions cover?
LeetCode 1809. Ad-Free Sessions is tagged Database on LeetCode.
- Is LeetCode 1809. Ad-Free Sessions a premium problem?
Yes. LeetCode 1809. Ad-Free Sessions is a LeetCode Premium problem, so the full statement and test cases require a paid LeetCode subscription.