Skip to content

Commit 1845d2d

Browse files
ashwekMadhavBahl
authored andcommitted
Day 18 - Python (#175)
* Create A_Frequency_Counter.py * Create B_Count_Uniques.py * Create C_Check_Power_N.py * Update README.md
1 parent ef1a7b4 commit 1845d2d

File tree

4 files changed

+135
-1
lines changed

4 files changed

+135
-1
lines changed

Diff for: day18/Python/A_Frequency_Counter.py

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
"""
2+
@author : ashwek
3+
@date : 15/1/2019
4+
"""
5+
6+
num = list(map(int, input("Enter numbers (space separated) = ").split()))
7+
8+
count = {}
9+
for each in num:
10+
if count.get(each) == None :
11+
count[each] = 1
12+
else:
13+
count[each] += 1
14+
15+
for v,c in count.items():
16+
print("\'" + str(v) + "\' is present " + str(c) + " time(s)")

Diff for: day18/Python/B_Count_Uniques.py

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
"""
2+
@author : ashwek
3+
@date : 15/1/2019
4+
"""
5+
6+
def countUniques(data):
7+
return len(set(data))
8+
9+
data = [1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 6, 7]
10+
print("Number of unique elements =", countUniques(data))

Diff for: day18/Python/C_Check_Power_N.py

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
"""
2+
@author : ashwek
3+
@date : 15/1/2019
4+
"""
5+
6+
def checkPowerN(arr1, arr2, pow):
7+
8+
arr1 = sorted(set(arr1))
9+
arr2 = sorted(set(arr2))
10+
11+
if len(arr1) != len(arr2) :
12+
return False
13+
14+
for i in range(len(arr1)):
15+
if arr1[i]**pow != arr2[i] :
16+
return False
17+
18+
return True
19+
20+
21+
arr1 = [1, 2, 3, 4]
22+
arr2 = [4, 9, 1, 16]
23+
n = 2
24+
print("arr1 =", arr1, "arr2 =", arr2, "n =", n)
25+
print("output = ", checkPowerN(arr1, arr2, n))
26+
27+
arr1 = [3, 4, 5, 2]
28+
arr2 = [1, 2, 3]
29+
n = 4
30+
print("arr1 =", arr1, "arr2 =", arr2, "n =", n)
31+
print("output = ", checkPowerN(arr1, arr2, n))

Diff for: day18/README.md

+78-1
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,29 @@ function printFrequency (freqObj) {
8181
freqCounter ([ 1, 2, 3, 1, 3, 4, 4, 4, 4, 2, 5]);
8282
```
8383

84+
### Python Implementation
85+
86+
#### [Solution](./Python/A_Frequency_Counter.py)
87+
88+
```python
89+
"""
90+
@author : ashwek
91+
@date : 15/1/2019
92+
"""
93+
94+
num = list(map(int, input("Enter numbers (space separated) = ").split()))
95+
96+
count = {}
97+
for each in num:
98+
if count.get(each) == None :
99+
count[each] = 1
100+
else:
101+
count[each] += 1
102+
103+
for v,c in count.items():
104+
print("\'" + str(v) + "\' is present " + str(c) + " time(s)")
105+
```
106+
84107
***
85108

86109
## Question 2 -- Count Uniques
@@ -179,6 +202,22 @@ function countUniques (arr) {
179202
console.log (`Number of unique elements = ${countUniques([1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 6, 7])}`);
180203
```
181204

205+
### Python Implementation
206+
207+
#### [Solution](./Python/B_Count_Uniques.py)
208+
209+
```python
210+
"""
211+
@author : ashwek
212+
@date : 15/1/2019
213+
"""
214+
215+
def countUniques(data):
216+
return len(set(data))
217+
218+
data = [1, 1, 2, 2, 2, 3, 4, 4, 4, 4, 4, 5, 5, 5, 6, 7]
219+
print("Number of unique elements =", countUniques(data))
220+
```
182221
***
183222

184223
## Question 3 -- Check Power N
@@ -257,4 +296,42 @@ function checkPowerN (arr1, arr2, num) {
257296

258297
console.log (checkPowerN ([1, 2, 3, 4], [4, 9, 1, 16], 2));
259298
console.log (checkPowerN ([3, 4, 5, 2], [1, 2, 3], 4));
260-
```
299+
```
300+
301+
### Python Implementation
302+
303+
#### [Solution](./Python/C_Check_Power_N.py)
304+
305+
```python
306+
"""
307+
@author : ashwek
308+
@date : 15/1/2019
309+
"""
310+
311+
def checkPowerN(arr1, arr2, pow):
312+
313+
arr1 = sorted(set(arr1))
314+
arr2 = sorted(set(arr2))
315+
316+
if len(arr1) != len(arr2) :
317+
return False
318+
319+
for i in range(len(arr1)):
320+
if arr1[i]**pow != arr2[i] :
321+
return False
322+
323+
return True
324+
325+
326+
arr1 = [1, 2, 3, 4]
327+
arr2 = [4, 9, 1, 16]
328+
n = 2
329+
print("arr1 =", arr1, "arr2 =", arr2, "n =", n)
330+
print("output = ", checkPowerN(arr1, arr2, n))
331+
332+
arr1 = [3, 4, 5, 2]
333+
arr2 = [1, 2, 3]
334+
n = 4
335+
print("arr1 =", arr1, "arr2 =", arr2, "n =", n)
336+
print("output = ", checkPowerN(arr1, arr2, n))
337+
```

0 commit comments

Comments
 (0)