100 Python Problem Solving Challenge
This document contains a curated list of 100 Python problems arranged from beginner to
advanced levels. These problems will help you strengthen your logic, problem-solving skills, and
programming confidence.
Beginner Level (1–30): Basics, Loops, Conditionals, and
Functions
1. Print "Hello, World!"
2. Sum of two numbers
3. Maximum of two numbers
4. Check even or odd
5. Check prime number
6. Find factorial of a number
7. Fibonacci sequence up to n
8. Reverse a number
9. Palindrome number
10. Count digits in a number
11. Armstrong number check
12. Print all primes between 1 to 100
13. Sum of digits of a number
14. GCD of two numbers
15. LCM of two numbers
16. Swap two numbers without temp variable
17. Convert Celsius to Fahrenheit
18. Check leap year
19. Calculator using functions
20. ASCII value of a character
21. Number to binary, octal, and hexadecimal
22. Sum of first n natural numbers
23. Print star pattern (triangle, pyramid, etc.)
24. Count vowels and consonants
25. Remove punctuation from string
26. Reverse a string
27. Count words in a sentence
28. Capitalize first letter of each word
29. Replace substring in string
30. Find the frequency of characters
Intermediate Level (31–70): Strings, Lists, Dictionaries,
Recursion
31. Find second largest element in list
32. Find duplicates in a list
33. Merge two sorted lists
34. Sort list using bubble sort
35. Find common elements in two lists
36. Remove all duplicates from list
37. Find frequency of elements in list
38. Linear search in list
39. Binary search (recursive and iterative)
40. Count even and odd numbers in list
41. Find minimum and maximum in list
42. Palindrome string check
43. Anagram check
44. Check pangram
45. Remove spaces from string
46. Longest word in a sentence
47. Check if two strings are isomorphic
48. Recursive factorial
49. Recursive Fibonacci
50. Recursively reverse a string
51. Power of a number using recursion
52. Sum of digits using recursion
53. Count vowels using recursion
54. Flatten nested list
55. Count frequency using dictionary
56. Most frequent element in list
57. Merge dictionaries
58. Sort dictionary by value
59. Convert two lists into a dictionary
60. Extract unique values from list of dicts
61. Set operations (union, intersection)
62. Find symmetric difference between sets
63. Check subset and superset
64. Count number of matching pairs in a list
65. Convert tuple to list and vice versa
66. Rotate list by k elements
67. Check if list is sorted
68. Find sublist with given sum
69. Generate all substrings of a string
70. Caesar Cipher (Basic Encryption)
Advanced Level (71–100): Algorithms, Data Structures,
Logic
71. Kadane’s Algorithm (Max Subarray Sum)
72. Two sum problem
73. Longest common prefix
74. Longest palindrome substring
75. Missing number in list
76. Merge intervals
77. Majority element
78. Move all zeros to end
79. Dutch National Flag problem (0s, 1s, 2s)
80. In-place matrix transpose
81. Spiral matrix traversal
82. Pascal’s Triangle
83. Subarray with given sum
84. Sliding window maximum
85. Check balanced parentheses
86. Evaluate postfix expression
87. Infix to postfix conversion
88. Valid parentheses combinations
89. N-th Fibonacci using memoization
90. Binary to decimal and vice versa
91. Count set bits in binary number
92. Tower of Hanoi
93. Sudoku board validity check
94. Implement queue using stack
95. Implement stack using queue
96. Detect cycle in a list
97. Find intersection point of two lists
98. First non-repeating character
99. Longest increasing subsequence
100. Dijkstra’s algorithm for shortest path
🎯 Aim: Solve 2 problems/day → 50 Days to Completion!