From 0e5da5a08105ac626778f40f9e65001106e13696 Mon Sep 17 00:00:00 2001 From: Chaitanya Date: Thu, 11 Apr 2024 03:42:33 +0530 Subject: [PATCH 1/5] hello World #1 --- practice/hello-world/hello_world.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/practice/hello-world/hello_world.py b/practice/hello-world/hello_world.py index adaa6c2..d695ea1 100644 --- a/practice/hello-world/hello_world.py +++ b/practice/hello-world/hello_world.py @@ -1,2 +1,2 @@ def hello(): - return 'Goodbye, Mars!' + return 'Hello, World!' From 95931877024fdd8519820db0b0e83f9b8c16a9e0 Mon Sep 17 00:00:00 2001 From: Chaitanya Date: Thu, 11 Apr 2024 23:48:39 +0530 Subject: [PATCH 2/5] Revert "hello World #1" This reverts commit 0e5da5a08105ac626778f40f9e65001106e13696. --- practice/hello-world/hello_world.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/practice/hello-world/hello_world.py b/practice/hello-world/hello_world.py index d695ea1..adaa6c2 100644 --- a/practice/hello-world/hello_world.py +++ b/practice/hello-world/hello_world.py @@ -1,2 +1,2 @@ def hello(): - return 'Hello, World!' + return 'Goodbye, Mars!' From 10accbb0614dc3303ae4fef283e10d5b3dcd61ee Mon Sep 17 00:00:00 2001 From: Chaitanya Date: Mon, 15 Apr 2024 19:05:50 +0530 Subject: [PATCH 3/5] Pascals Triangle --- .../__pycache__/pascals_triangle.cpython-39.pyc | Bin 0 -> 653 bytes ...als_triangle_test.cpython-39-pytest-6.2.4.pyc | Bin 0 -> 3042 bytes practice/pascals-triangle/pascals_triangle.py | 13 ++++++++++++- 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc create mode 100644 practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc diff --git a/practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc b/practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8e1c19bac4c5dbf6a3ee78c4b3daef84a553fabe GIT binary patch literal 653 zcmY*Xv5wO~5S>{&i3xWNNF+f5xebDd8b#4bcTipv=?cpzGTx1`&aus|!@xfT`gFl7 zu35SR`V2qePc&!QlI=^c5|wj>{6EzZcD;?FM=MeDSGN}5n5jlBiTcCN@fw$)^ZWU7 z@k(jGnESdoGk$9PTqRMJzEx{`|Mef(f0NjW+rVAG_@D&0ec4~}6{-)&vZNjjfG^^W zi(ahlnQIz~MvR^|oL+O_Ws#|7XsKP~e!n<+7M@J~!$PVsF-07zcS^^pS%jsI;wp_* zSVks}GV`R;X_P0~E->2$M&0G;>kWTSCb*z*%?wvu71>7GQ{ zQa#tY(2Z+#O-rM^YMe~vO*<+}mCK^7t6c~ylumvldH4c47!6}+OuT;f_*%5 p4@B&77jOYj?13M_-)N5UG*-KLgBxUvG~Reo$YrJ`wvx8L@GmUdmiqtz literal 0 HcmV?d00001 diff --git a/practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc b/practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc new file mode 100644 index 0000000000000000000000000000000000000000..893ea7ee01d0b3bebb52e6ffa5837681c9e38fb5 GIT binary patch literal 3042 zcmbtW%Wm676y=bVL_KZCPF%Zfs@Um6ZQ~|E7e!D6E?hSVS_p+>q=+DtU^HWe2KDF+ z<%f`V<8;$aes>2Mwrr=)|k=gY0PTOY0MMmYPm-iFYw|kix)*^H-F^R3YD-M>=E%Hi3StxW)mmOpUxL<8=|6hF1fEDrr-N*a3u*S%3%7^%-p>DP;|201K$n zk?@%y&orWgt|Mp_RV6?XPyp!WvL+Jk58eZO1^5p2bAVX@`Z3`-6An&;+kkDrZ>YZk zKxa}jn#UWuXwY-+f;j8+s5*hrgITjV)QG7>3$ufDc=F0Tm5qeZc;Is(Osz! zGJ_kOLu#uNsh!17#|=wqGPk1U7VjI;ZjCX!HIdmcdOBWu&0nEe{6Y#XnZlB~TC=nG z>A2~nGm)E_X*->s)HChlF=~@%+9-TFW;)$n#Vp)2qJ8>y%!c99G1EDAA~Q43RCu5z zyE8^?@;nGGKU`S4dHOiG&!J|}ix zvfUIVQHJCR56Zh~PU)08@cl$7)usE$VOD$go~5dHX*0+Dj2@kC-Rj^CT{`FXm)pJ8 zb0N!}oiZ|CIaKAgXa+HjYbBEuOg`QULM2p^dm2PNu_f|h!h-%`-hh33m#X&=K zmRp=W#uiazXloqX1ol|j|bj^(EoI-im(>jyV*uJ=Xsop>TPw!OKoHnq> z4ax-law|9pTfJ6UibhW=60OWhyccDND7fI2to(!mlhW2O;7s+zQHLs-Yl?XEbriP3 zSdWIpvX!3!J_lg2T$F#=Y$=_nhvD)=<)1dRCmv9^!Z8NY&yw^mTX@r7n<&4!tdVM^ zn0UV54qC$Zlbr9jI=n}_m!A}TA3M9Lksp9t8Gx-rt^ig6$k*~iz(;^D0GJeGKY}BG z#9k;D36|+mI3Ib;bI#qam(~%W^t=~FaoAQ#VZD3kk4j5^_YjJ#nYm7qtVyvi!sm{kIHbdI5jjet%!Abi=MB;MCXsE63y T^r>lud3GV?vh>CKAGh=$;})xu literal 0 HcmV?d00001 diff --git a/practice/pascals-triangle/pascals_triangle.py b/practice/pascals-triangle/pascals_triangle.py index c1d878c..efb8252 100644 --- a/practice/pascals-triangle/pascals_triangle.py +++ b/practice/pascals-triangle/pascals_triangle.py @@ -1,2 +1,13 @@ def rows(row_count): - pass + if row_count < 0: + raise ValueError("number of rows is negative") + elif row_count == 0: + return [] + elif row_count == 1: + return [[1]] + else: + triangle = rows(row_count - 1) + last_row = triangle[-1] + new_row = [1] + [last_row[i] + last_row[i+1] for i in range(len(last_row) - 1)] + [1] + triangle.append(new_row) + return triangle \ No newline at end of file From fb98c4786c8a162efb840a3bd42b54585df6ac26 Mon Sep 17 00:00:00 2001 From: Chaitanya Date: Mon, 22 Apr 2024 03:11:40 +0530 Subject: [PATCH 4/5] removed cache files --- .../__pycache__/pascals_triangle.cpython-39.pyc | Bin 653 -> 0 bytes ...als_triangle_test.cpython-39-pytest-6.2.4.pyc | Bin 3042 -> 0 bytes 2 files changed, 0 insertions(+), 0 deletions(-) delete mode 100644 practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc delete mode 100644 practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc diff --git a/practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc b/practice/pascals-triangle/__pycache__/pascals_triangle.cpython-39.pyc deleted file mode 100644 index 8e1c19bac4c5dbf6a3ee78c4b3daef84a553fabe..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 653 zcmY*Xv5wO~5S>{&i3xWNNF+f5xebDd8b#4bcTipv=?cpzGTx1`&aus|!@xfT`gFl7 zu35SR`V2qePc&!QlI=^c5|wj>{6EzZcD;?FM=MeDSGN}5n5jlBiTcCN@fw$)^ZWU7 z@k(jGnESdoGk$9PTqRMJzEx{`|Mef(f0NjW+rVAG_@D&0ec4~}6{-)&vZNjjfG^^W zi(ahlnQIz~MvR^|oL+O_Ws#|7XsKP~e!n<+7M@J~!$PVsF-07zcS^^pS%jsI;wp_* zSVks}GV`R;X_P0~E->2$M&0G;>kWTSCb*z*%?wvu71>7GQ{ zQa#tY(2Z+#O-rM^YMe~vO*<+}mCK^7t6c~ylumvldH4c47!6}+OuT;f_*%5 p4@B&77jOYj?13M_-)N5UG*-KLgBxUvG~Reo$YrJ`wvx8L@GmUdmiqtz diff --git a/practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc b/practice/pascals-triangle/__pycache__/pascals_triangle_test.cpython-39-pytest-6.2.4.pyc deleted file mode 100644 index 893ea7ee01d0b3bebb52e6ffa5837681c9e38fb5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3042 zcmbtW%Wm676y=bVL_KZCPF%Zfs@Um6ZQ~|E7e!D6E?hSVS_p+>q=+DtU^HWe2KDF+ z<%f`V<8;$aes>2Mwrr=)|k=gY0PTOY0MMmYPm-iFYw|kix)*^H-F^R3YD-M>=E%Hi3StxW)mmOpUxL<8=|6hF1fEDrr-N*a3u*S%3%7^%-p>DP;|201K$n zk?@%y&orWgt|Mp_RV6?XPyp!WvL+Jk58eZO1^5p2bAVX@`Z3`-6An&;+kkDrZ>YZk zKxa}jn#UWuXwY-+f;j8+s5*hrgITjV)QG7>3$ufDc=F0Tm5qeZc;Is(Osz! zGJ_kOLu#uNsh!17#|=wqGPk1U7VjI;ZjCX!HIdmcdOBWu&0nEe{6Y#XnZlB~TC=nG z>A2~nGm)E_X*->s)HChlF=~@%+9-TFW;)$n#Vp)2qJ8>y%!c99G1EDAA~Q43RCu5z zyE8^?@;nGGKU`S4dHOiG&!J|}ix zvfUIVQHJCR56Zh~PU)08@cl$7)usE$VOD$go~5dHX*0+Dj2@kC-Rj^CT{`FXm)pJ8 zb0N!}oiZ|CIaKAgXa+HjYbBEuOg`QULM2p^dm2PNu_f|h!h-%`-hh33m#X&=K zmRp=W#uiazXloqX1ol|j|bj^(EoI-im(>jyV*uJ=Xsop>TPw!OKoHnq> z4ax-law|9pTfJ6UibhW=60OWhyccDND7fI2to(!mlhW2O;7s+zQHLs-Yl?XEbriP3 zSdWIpvX!3!J_lg2T$F#=Y$=_nhvD)=<)1dRCmv9^!Z8NY&yw^mTX@r7n<&4!tdVM^ zn0UV54qC$Zlbr9jI=n}_m!A}TA3M9Lksp9t8Gx-rt^ig6$k*~iz(;^D0GJeGKY}BG z#9k;D36|+mI3Ib;bI#qam(~%W^t=~FaoAQ#VZD3kk4j5^_YjJ#nYm7qtVyvi!sm{kIHbdI5jjet%!Abi=MB;MCXsE63y T^r>lud3GV?vh>CKAGh=$;})xu From 93cc9a076ea87c356662fc0a172171657ba1acd0 Mon Sep 17 00:00:00 2001 From: Chaitanya Date: Mon, 22 Apr 2024 19:54:15 +0530 Subject: [PATCH 5/5] improved the code --- practice/pascals-triangle/pascals_triangle.py | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/practice/pascals-triangle/pascals_triangle.py b/practice/pascals-triangle/pascals_triangle.py index efb8252..1c342e5 100644 --- a/practice/pascals-triangle/pascals_triangle.py +++ b/practice/pascals-triangle/pascals_triangle.py @@ -1,4 +1,24 @@ def rows(row_count): + """ + Generate the first `row_count` rows of Pascal's Triangle. + + Pascal's Triangle is a triangle of numbers where each number is the sum of + the two numbers directly above it. The triangle starts with a single 1 at + the top, and each row has one more element than the previous row. + + Args: + row_count (int): The number of rows to generate. + + Returns: + list: A list of lists representing the first `row_count` rows of Pascal's Triangle. + + Raises: + ValueError: If `row_count` is negative. + + Examples: + >>> rows(3) + [[1], [1, 1], [1, 2, 1]] + """ if row_count < 0: raise ValueError("number of rows is negative") elif row_count == 0: @@ -6,8 +26,13 @@ def rows(row_count): elif row_count == 1: return [[1]] else: + # Generate the first `row_count - 1` rows triangle = rows(row_count - 1) + + # Calculate the new row based on the last row last_row = triangle[-1] new_row = [1] + [last_row[i] + last_row[i+1] for i in range(len(last_row) - 1)] + [1] + + # Append the new row to the triangle and return it triangle.append(new_row) return triangle \ No newline at end of file