From f1cbd738b649870c45c244075c467d71d8f587d2 Mon Sep 17 00:00:00 2001 From: akanksha-vishwak Date: Sat, 7 Jun 2025 04:15:23 +0200 Subject: [PATCH] solution to both problems --- 01-ArticleViews-I.py | 19 +++++++++++++++++++ 02-InvalidTweets.py | 7 +++++++ 2 files changed, 26 insertions(+) create mode 100644 01-ArticleViews-I.py create mode 100644 02-InvalidTweets.py diff --git a/01-ArticleViews-I.py b/01-ArticleViews-I.py new file mode 100644 index 0000000..b7f4d5e --- /dev/null +++ b/01-ArticleViews-I.py @@ -0,0 +1,19 @@ +# Problem 1 : Article Views I ( https://leetcode.com/problems/article-views-i/ ) + +import pandas as pd + +def article_views(views: pd.DataFrame) -> pd.DataFrame: + df = views[views['author_id']==views['viewer_id']]\ + .drop_duplicates(subset=['author_id'])\ + .sort_values(by=['author_id'])\ + .rename(columns={'author_id':'id'})[['id']] + return df + +#May be a bit faster on large datasets since it avoids creating a NumPy array + +def article_views(views: pd.DataFrame) -> pd.DataFrame: + + df = views[views['author_id']==views['viewer_id']] + df = df['author_id'].unique() + df = pd.DataFrame(df, columns=['id']) + return df.sort_values(by=['id']) \ No newline at end of file diff --git a/02-InvalidTweets.py b/02-InvalidTweets.py new file mode 100644 index 0000000..609fbb9 --- /dev/null +++ b/02-InvalidTweets.py @@ -0,0 +1,7 @@ +#Problem 2 :Invalid Tweets ( https://leetcode.com/problems/invalid-tweets/ ) + +import pandas as pd + +def invalid_tweets(tweets: pd.DataFrame) -> pd.DataFrame: + df = tweets[ tweets['content'].str.len() >15 ][['tweet_id']] + return df \ No newline at end of file