Percentage of Users Attended a Contest — LeetCode 1633 Python Solution
EasyDatabase
- Problem
- #1633
- Reading time
- 3 min
- Source
- leetcode.com
Table schema
SQL
Table: Users +-------------+---------+ | Column Name | Type | +-------------+---------+ | user_id | int | | user_name | varchar | +-------------+---------+ user_id is the primary key (column with unique values) for this table. Each row of this table contains the name and the id of a user.Example
SQL
+-------------+---------+
| Column Name | Type |
+-------------+---------+
| user_id | int |
| user_name | varchar |
+-------------+---------+
user_id is the primary key (column with unique values) for this table.
Each row of this table contains the name and the id of a user.Python solution
Python
import duckdb
import pandas as pd
def solution(users: pd.DataFrame, register: pd.DataFrame) -> pd.DataFrame:
con = duckdb.connect()
con.register("Users", users)
con.register("Register", register)
return con.execute("""SELECT
contest_id,
ROUND(COUNT(1) * 100 / (SELECT COUNT(1) FROM Users), 2) AS percentage
FROM Register
GROUP BY 1
ORDER BY 2 DESC, 1;""").df()Complexity
| Measure | Complexity |
|---|---|
| Time | O(n log n) (typical) |
| Space | O(n) auxiliary |
Related problems
Frequently asked questions
- How hard is LeetCode 1633. Percentage of Users Attended a Contest?
- LeetCode 1633. Percentage of Users Attended a Contest is rated Easy on LeetCode.
- What topics does LeetCode 1633. Percentage of Users Attended a Contest cover?
- LeetCode 1633. Percentage of Users Attended a Contest is tagged Database on LeetCode.