Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions Task/Sushree/ques1.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
def is_anagram(s: str, t: str) -> bool:

if len(s) != len(t):
return False
char_count_s = {}
char_count_t = {}

for char in s:
char_count_s[char] = char_count_s.get(char, 0) + 1

for char in t:
char_count_t[char] = char_count_t.get(char, 0) + 1

return char_count_s == char_count_t

s1 = "anagram"
t1 = "nagaram"
print(is_anagram(s1, t1))

s2 = "rat"
t2 = "car"
print(is_anagram(s2, t2))
17 changes: 17 additions & 0 deletions Task/Sushree/ques10.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
def transpose(matrix):
m = len(matrix)
n = len(matrix[0])

transposed_matrix = [[0] * m for _ in range(n)]

for i in range(m):
for j in range(n):
transposed_matrix[j][i] = matrix[i][j]

return transposed_matrix

matrix1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
matrix2 = [[1, 2, 3], [4, 5, 6]]

print(transpose(matrix1))
print(transpose(matrix2))
20 changes: 20 additions & 0 deletions Task/Sushree/ques2.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
def frequency_in_lexicographical_order(s: str):
frequency = {}
for char in s:
if char.isalpha():
if char in frequency:
frequency[char] += 1
else:
frequency[char] = 1

sorted_uppercase = sorted([char for char in frequency if char.isupper()])
sorted_lowercase = sorted([char for char in frequency if char.islower()])

for char in sorted_uppercase:
print(f"{char}: {frequency[char]}")

for char in sorted_lowercase:
print(f"{char}: {frequency[char]}")

input_string = "Robotics Society"
frequency_in_lexicographical_order(input_string)
18 changes: 18 additions & 0 deletions ques3.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
def plus_one(digits):
n = len(digits)
for i in range(n-1, -1, -1):
digits[i] += 1
if digits[i] < 10:
return digits
digits[i] = 0

return [1] + digits

example1 = [1, 2, 3]
example2 = [4, 3, 2, 1]
example3 = [9]

print(plus_one(example1))
print(plus_one(example2))
print(plus_one(example3))

24 changes: 24 additions & 0 deletions ques6.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
def is_prime(n):
if n <= 1:
return False
for i in range(2, n):
if n % i == 0:
return False
return True

def prime_difference(N, A):
primes = []
for i in range(N):
if is_prime(A[i]):
primes.append(A[i])

if len(primes) == 0:
return 1

smallest_prime = min(primes)
largest_prime = max(primes)
return largest_prime - smallest_prime

A = [1, 2, 3, 4, 5, 6]
N = 6
print(prime_difference(N, A))
20 changes: 20 additions & 0 deletions ques7.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
def smallest_prime_factor(n):
if n <= 1:
return n
for i in range(2, n + 1):
if n % i == 0:
return i
return n

def amount_roy_pays(N, prices):
results = []
for price in prices:
min_prime = smallest_prime_factor(price)
roy_pays = price - min_prime
results.append(roy_pays)
return results


N = 2
prices = [5, 10]
print(amount_roy_pays(N, prices))
14 changes: 14 additions & 0 deletions ques8.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
def count_frequencies(lst):
frequency_dict = {}

for element in lst:
if element in frequency_dict:
frequency_dict[element] += 1
else:
frequency_dict[element] = 1

return frequency_dict

example = [1,2,2,3,5,6,4,7,7]
result = count_frequencies(example)
print(result)