BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//American Young Coder - ECPv6.10.1.1//NONSGML v1.0//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
X-ORIGINAL-URL:https://www.ayclogic.com
X-WR-CALDESC:Events for American Young Coder
REFRESH-INTERVAL;VALUE=DURATION:PT1H
X-Robots-Tag:noindex
X-PUBLISHED-TTL:PT1H
BEGIN:VTIMEZONE
TZID:America/Los_Angeles
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:20250309T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20251102T090000
END:STANDARD
BEGIN:DAYLIGHT
TZOFFSETFROM:-0800
TZOFFSETTO:-0700
TZNAME:PDT
DTSTART:20260308T100000
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:-0700
TZOFFSETTO:-0800
TZNAME:PST
DTSTART:20261101T090000
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20260123T190000
DTEND;TZID=America/Los_Angeles:20260123T200000
DTSTAMP:20260429T114953
CREATED:20260124T041419Z
LAST-MODIFIED:20260124T041419Z
UID:32262-1769194800-1769198400@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over implementation of the Maximizing Productivity problem involving binary search.\n\nHomework:\n\nWork on this problem: https://usaco.org/index.php?page=viewproblem2&cpid=1443 and submit your answer to the webpage and google drive when you are finished\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-12/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20260116T190000
DTEND;TZID=America/Los_Angeles:20260116T200000
DTSTAMP:20260429T114953
CREATED:20260117T044441Z
LAST-MODIFIED:20260117T044441Z
UID:32192-1768590000-1768593600@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over the Balancing Bacteria optimal solution 2 implementation using difference arrays\n\nHomework:\n\nCode up the optimal solution using sorting + binary search on the difference values Maximizing Productivity\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1397\nNote on the optimal solution(s) presented in classOptimal Solution 1 (Optimized naive solution):\nWe can rearrange the formula for the brute force:\nS + t_i < c_i\,\ninto\nc_i – t_i > S \nThen we can sort the differences and perform a binary search on it to reduce the number of checks to perform on the N farms.\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-11/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20260108T190000
DTEND;TZID=America/Los_Angeles:20260108T200000
DTSTAMP:20260429T114953
CREATED:20260109T001005Z
LAST-MODIFIED:20260109T055028Z
UID:32097-1767898800-1767902400@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over the Balancing Bacteria optimal solution over greedy search\n\nHomework:\n\nCode up the second optimal solution using difference arrays for Balancing Bacteria\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1372 \nNote on the optimal solution(s) presented in class\nOptimal Solution 1 (Optimized naive solution): \nIn class we talked about how to derive the accumulation by analyzing the solution\, and estimating the remainder needed. \nThis resulted in the formula net_accumulation[i] = net_accumulation[i-1] + cur_sprays + net_sprays. \nThe purpose of the net_accumulation is to iteratively adjust the target patch without adjusting every patch that comes after it. This value can be thought of as individual accumulations from every patch before it\, but every patch before it also has a position multiplier. \nI recommend re-deriving the formula above\, seeing how to go from an understanding of the problem to the solution mentioned above. \nThe easiest way to derive the formula above is through analyzing the operations done and how those operations increment/decrement the values of the next target patches. \nOptimized Solution 2 (Difference Arrays):\nWe derived this solution by realizing we can transform the problem space S and the operation O on the space into another form that is meaningful. \nDiff(A) means you transform the array A by subtracting each position in the array with the previous position value. \nSo Diff(A): [    A[0]\,    A[1] – A[0]\,   A[2] – A[1]\, …\, A[last_index] – A[last_index – 1]]\nWe start with the original space S\, with an example as shown:\n–1  0 –1 0 \nwhere the operation to balance patch 1 causes an accumulation shown as:\n+1\, +2\, +3\, +4 \nTransforming the original operation O with Diff(O) changes the operations to:\n+1\, +1\, +1\, +1 \nTransforming it one more time to Diff(Diff((O)) leads the operation to become:\n+1\, 0\, 0\, 0 \nWhich means that the operation Diff(Diff(O)) on a patch does not affect the other patches. \nHowever this Diff(Diff(O)) operation has to be done on the Diff(Diff(S)) space instead of the original. \nSo in implementing the second optimal solution\, define a Diff() function which transforms an array\, and then equalize the Diff(Diff(S)) space instead to figure out the number of operations needed to set everything to 0.\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-10/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251218T190000
DTEND;TZID=America/Los_Angeles:20251218T200000
DTSTAMP:20260429T114953
CREATED:20251218T232907Z
LAST-MODIFIED:20251219T042645Z
UID:31962-1766084400-1766088000@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over the Balancing Bacteria optimal solution over greedy search\n\nHomework:\n\nCode up the optimal solution(s) for Balancing Bacteria\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1372 \nNote on the optimal solution:\nIn class we talked about how to derive the accumulation by analyzing the solution\, and estimating the remainder needed. \nNote that I did not account for the remainder properly because the remainder is computed one step ahead in time (meaning after the first update we assume no remainder)\, but this makes it hard to compute the remainder as we need more variables to keep track for proper remainder counting \nInstead\, on every update\, it suffices for us to increment the accumulation by the netSprayValue (everytime we do a target spray\, what is the net target spray value) + currentSprayValue \nHowever I recommend practicing with deriving the update rule for the accumulation\, analyzing the numbers shown by hand accounting the needed accumulation then seeing if you can come up with a pattern for the accumulation shown. This is important especially during competitions where you will be asked to come up with a formula you may have not seen before but is in similar spirit.\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-9/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251211T190000
DTEND;TZID=America/Los_Angeles:20251211T200000
DTSTAMP:20260429T114953
CREATED:20251212T044202Z
LAST-MODIFIED:20251212T044313Z
UID:31880-1765479600-1765483200@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over Cannonball code implementation\nWent over the Balancing Bacteria brute force solution\n\nHomework:\n\nCode up the solution for Balancing Bacteria\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1372\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-8/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251204T190000
DTEND;TZID=America/Los_Angeles:20251204T200000
DTSTAMP:20260429T114953
CREATED:20251205T040834Z
LAST-MODIFIED:20251205T040834Z
UID:31808-1764874800-1764878400@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over implementation for Majority Opinion.\nWent over the Cannonball problem (easy difficulty) and Balancing Bacteria (hard difficulty)\n\nHomework:\n\nCode up the solution for Cannonball\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1372\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-7/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251120T190000
DTEND;TZID=America/Los_Angeles:20251120T200000
DTSTAMP:20260429T114953
CREATED:20251120T221100Z
LAST-MODIFIED:20251121T040612Z
UID:31712-1763665200-1763668800@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent over implementation details for Feeding The Cows.\nWent over the Majority Opinion problem (medium difficulty)\n\nHomework:\n\nCode up the optimal solution for Majority Opinion\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1371Key idea for implementation:A hay type can only be a possible final answer if it can grow and overtake all the other preferences. The rule states that a hay type overtake happens when >half of the cows in a focus group like the same hay type. \nHint: DON’T think about how to select the size of a focus group or which grouping to make\, but rather think about what conditions must be true for any hay type to overtake the rest.\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-6/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251113T190000
DTEND;TZID=America/Los_Angeles:20251113T200000
DTSTAMP:20260429T114953
CREATED:20251114T041235Z
LAST-MODIFIED:20251114T041235Z
UID:31657-1763060400-1763064000@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nImplemented the Cow College optimal solution.\nWent through the feeding cows problem.\n\nHomework:\n\nCode up the optimal solution for Feeding The Cows\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1252  \nKey idea for implementation: Run a greedy algorithm where you place the food source as far away as possible to the right. \nThink about how to handle edge cases at the very end of the cow list.\nRead through this problem for next week: https://usaco.org/index.php?page=viewproblem2&cpid=1371\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-5/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251106T190000
DTEND;TZID=America/Los_Angeles:20251106T200000
DTSTAMP:20260429T114953
CREATED:20251107T042300Z
LAST-MODIFIED:20251107T042843Z
UID:31571-1762455600-1762459200@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent through the Cow College brute force implementation and optimal solution walkthrough\nIntroduced the feeding cows problem\n\nHomework:\n\nCode up the optimal solution for Cow College\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1251 \nNote I mis-spoke during the meeting because you need to sort the hash-map keys in order to figure out how many cows are able to pay. \nKey idea for implementation: Group your input with a hashmap\, where keys are the max amount a cow is willing to pay\, and the values are the number of cows with that pay key. \nThen loop over each key the same way you did with the brute force.\nWork on a brute force solution for Feeding Cows\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1252\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-4/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251030T190000
DTEND;TZID=America/Los_Angeles:20251030T200000
DTSTAMP:20260429T114953
CREATED:20251031T033457Z
LAST-MODIFIED:20251031T033457Z
UID:31509-1761850800-1761854400@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent through the Farmer John Actually Farms implementation for the optimal solution\n\nHomework:\n\nCode up the brute force solution for Cow College\, and submit your answer to the webpage and google drive when you are finished\nproblem: https://usaco.org/index.php?page=viewproblem2&cpid=1251\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-3/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251023T190000
DTEND;TZID=America/Los_Angeles:20251023T200000
DTSTAMP:20260429T114953
CREATED:20251025T080829Z
LAST-MODIFIED:20251025T081035Z
UID:31423-1761246000-1761249600@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent through the Farmer John Actually Farms problem for the optimal solution\n\nHomework:\n\nCode up the optimal solution for Farm John Actually Farms\, and submit your answer to the webpage when you are finished here https://usaco.org/index.php?page=viewproblem2&cpid=1371:\n\n\n\n\n\n\n\n\n\n\nOptimal Solution (Implementation Level)\n\n\n\n\n\n\n1\nSort Your Plants\n\n\n<- Use a Plant class to represent the plants details\n\n\n\n\n\n\n\nYou want a mapping for the desired ordering to point to each index of the Plant array\n\n\n\n\n\n2\n\n\nFind the day of intersection between each pair in the sorted array\n\n\nnote: if the two pairs never intersect\, and the initial ordering between the two is wrong\, leave the algorithm\n\n\n\n\n\nuse the y=mx+c and setting y’s equal to each other\n\n\n\n\n\n\n\n\nround up OR increment to the next day if the intersection is not a decimal\n\n\n\n\n\n3\n\n\nCheck each pairs value at the interesting day and see if it matches one being greater than the other\n\n\n\n\n\n4\n\n\nIf all pairs pass\, you take the highest day\n\n\n\n\n\n\nAlso code up the brute force method for the problem (code and logic should be similar: \n\n\n\n\n\n\n\nBrute Force:\n\n\n\n\n1)\nFind all the interesting days\n\n\n\n\n\n\nCreating pairs for all the plants (double for loop)\n\n\n\n\n\n\n\n\nComputing the interesting days between all pairs and store in a list\n\n\n\n\n\n2)\n\n\nFor loop over all the interesting days\n\n\n\n\n\n3)\nCompute all heights\n\n\n\n\n\n\n# Check if the ordering of the trees at this day matches the desired ordering\n\n\n\n\n\n\nFor p in plants:\n\n\n\n\n\n\nCompare p to every other plant\, and count how many are bigger than itself\n\n\n\n\n\n4)\n\n\nCheck if this count matches the index at T\n\n\n\n\n\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here (Tues7PM_IntroToCompProgramming is our excel sheet for visuals).
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin-2/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20251016T190000
DTEND;TZID=America/Los_Angeles:20251016T200000
DTSTAMP:20260429T114953
CREATED:20251017T080355Z
LAST-MODIFIED:20251017T080355Z
UID:31334-1760641200-1760644800@www.ayclogic.com
SUMMARY:7 PM – USACO Bronze – Darin
DESCRIPTION:What We Did Today:\n\nWent through the Farmer John Actually Farms problem for the brute force\n\nHomework:\nImplement the brute force code for the problem: https://usaco.org/index.php?page=viewproblem2&cpid=1349 \nBrute-Force Approach\nWhen we want to check impossibility\, the discussed method in class of comparing pairwise growths only works for whether or not it can stay in the desired positioning forever. \nInstead\, we can only check impossibility by checking each “point” that is a candidate for a successful ordering. \n\n\nEnumerate “interesting” daysCollect a finite set of days to test: \n\n\nDay 0 (ordering could be right from the start) \n\n\nFor every integer day d≥0 where two plants would be equal height\, take the day after it as d+1 (a correct ordering only happens when a switch happens)\nHint: You can think of each plant’s growth as a line that grows in the xy plane\, so what is a formula used to find the point of intersection between two lines (in other words\, find the day the plants have the same height) ? \n\n\n\n\nSimulate heights on each candidate dayFor each candidate day d\, compute the heights of every plant (think what formula works for this) \n\n\nCount “strictly taller” and compare to targetFor each plant i\, count how many plants have height strictly greater than Hi(d).If all counts match the given target array t\, record the day d. \n\n\nAnswerOutput the smallest candidate day that works\, or −1 if none do. \n\n\nEdge cases: \n\nSanity check pairsFor each pair of plants (i\,j)\, note whether their relative order could ever change: if they grow at the same rate and start equal\, they’ll be tied forever (makes a strict ranking impossible).\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-usaco-bronze-darin/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250916T190000
DTEND;TZID=America/Los_Angeles:20250916T200000
DTSTAMP:20260429T114953
CREATED:20250918T144124Z
LAST-MODIFIED:20250921T185509Z
UID:30951-1758049200-1758052800@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nSolved the Cowntract Tracing problem theoretically\n\nHomework:\nImplement the code for https://usaco.org/index.php?page=viewproblem2&cpid=1348! \nTheory: \nGroup final cows into sick and non sick\nThink of each cows as having a window (net effect of sickness spread) \nIf we know each cows window\, we can compute the initial cow count \nI = number of cows in one sick group\, W = cow window \nI/W = initial cow count per group \nIdea: Sum up all the I/W over the list of cows \nHow to compute W? \nCases (note that each I below is variable\, so its per group basis):\nTake the smallest odd group and compute:\nW = I \nTake edge groups and compute:\nW = 2*I – 1 \nTake (if there exists) the smallest even group and compute:\nW = I – 1 \nBetween these candidate W’s\, choose the min over all of them. \nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-22/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250909T190000
DTEND;TZID=America/Los_Angeles:20250909T200000
DTSTAMP:20260429T114953
CREATED:20250910T031132Z
LAST-MODIFIED:20250910T031132Z
UID:30766-1757444400-1757448000@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:  \n\nWhat We Did Today:\n\nSolved the Candy Cane Feast problem\n\nHomework:\nDo https://usaco.org/index.php?page=viewproblem2&cpid=1348! We will discuss in class together. \nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-21/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250902T190000
DTEND;TZID=America/Los_Angeles:20250902T200000
DTSTAMP:20260429T114953
CREATED:20250827T175215Z
LAST-MODIFIED:20250904T024621Z
UID:30426-1756839600-1756843200@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nImplemented the optimal solution for Milk Exchange\n\nHomework:\nDo https://usaco.org/index.php?page=viewproblem2&cpid=1347! We will discuss in class together. \nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-20/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250819T190000
DTEND;TZID=America/Los_Angeles:20250819T200000
DTSTAMP:20260429T114953
CREATED:20250820T031528Z
LAST-MODIFIED:20250820T031528Z
UID:30179-1755630000-1755633600@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nWorked through the brute force solution of Milk Exchange\n\nHomework:\nCreate an account\, submit your brute force solution\, and also view the actual solution of the Milk Exchange problem: \n\nhttps://usaco.org/index.php?page=viewproblem2&cpid=1396 \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-19/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250812T190000
DTEND;TZID=America/Los_Angeles:20250812T200000
DTSTAMP:20260429T114953
CREATED:20250814T040319Z
LAST-MODIFIED:20250814T040343Z
UID:30065-1755025200-1755028800@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed dynamic programming and greedy algorithms\nLearnt more about greedy algorithms and their properties (recap done here)\n\nHomework:\nWrite a brute force solution for this Milk Exchange problem: \n\nhttps://usaco.org/index.php?page=viewproblem2&cpid=1396 \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-18/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250805T190000
DTEND;TZID=America/Los_Angeles:20250805T200000
DTSTAMP:20260429T114953
CREATED:20250806T030007Z
LAST-MODIFIED:20250806T051850Z
UID:29958-1754420400-1754424000@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed dynamic programming and greedy algorithms\nSolved the coin combinations problem\n\nHomework:\n\nGo through this problem (we will discuss this in class next week): https://usaco.org/index.php?page=viewproblem2&cpid=1396 \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-17/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250722T190000
DTEND;TZID=America/Los_Angeles:20250722T200000
DTSTAMP:20260429T114953
CREATED:20250723T030726Z
LAST-MODIFIED:20250723T030741Z
UID:29807-1753210800-1753214400@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed Recursion and Memoization in the Fibonacci algorithm\nLearnt about dynamic programming\n\nHomework:\nReview this video if you haven’t already! \n\nGreedy Algorithms: https://www.youtube.com/watch?v=lfQvPHGtu6Q \nAnd go through this problem (we will discuss this in class next week): https://usaco.org/index.php?page=viewproblem2&cpid=1012 \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-15/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250715T190000
DTEND;TZID=America/Los_Angeles:20250715T200000
DTSTAMP:20260429T114953
CREATED:20250716T010633Z
LAST-MODIFIED:20250716T010633Z
UID:29722-1752606000-1752609600@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed Recursion\nImplemented the Fibonacci Function using Recursion\nLearnt about Memoization\n\nHomework:\nSubmit into the google drive here when you are finished! \n\n// new HW\n// create a recursive function binSearch(n\, low\, high) that looks for the number n in a sorted list\n\n// This is called the binary search algorithm\n\n// binSearch(5) = true\n// binSearch(1) = false\n// 0 2 3 4 5 6 7 8\n\n// see if n is equal to len(list) / 2\n// if it is greater than len(list) / 2: traverse the upper half\n// else traverse the lower half\n\n// base case\n// operation\n// recursive function\n\n// output: true or false\n\nhint: use low and high as variables to determine which part of the array to look around\nAlso watch these two videos: \nDynamic Programming: https://www.youtube.com/watch?v=oNoILrFOx2k \nGreedy Algorithms: https://www.youtube.com/watch?v=lfQvPHGtu6Q \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-14/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250708T190000
DTEND;TZID=America/Los_Angeles:20250708T200000
DTSTAMP:20260429T114953
CREATED:20250709T032007Z
LAST-MODIFIED:20250709T032045Z
UID:29605-1752001200-1752004800@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed Recursion\nImplemented the Fibonacci Function using Recursion\nLearnt about Memoization\n\nHomework:\nSubmit into the google drive here when you are finished! \n\n// new HW\n// create a recursive function binSearch(n\, low\, high) that looks for the number n in a sorted list\n\n// This is called the binary search algorithm\n\n// binSearch(5) = true\n// binSearch(1) = false\n// 0 2 3 4 5 6 7 8\n\n// see if n is equal to len(list) / 2\n// if it is greater than len(list) / 2: traverse the upper half\n// else traverse the lower half\n\n// base case\n// operation\n// recursive function\n\n// output: true or false\n\nhint: use low and high as variables to determine which part of the array to look around\nAlso watch these two videos: \nDynamic Programming: https://www.youtube.com/watch?v=oNoILrFOx2k \nGreedy Algorithms: https://www.youtube.com/watch?v=lfQvPHGtu6Q \n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-13/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250624T190000
DTEND;TZID=America/Los_Angeles:20250624T200000
DTSTAMP:20260429T114953
CREATED:20250625T190733Z
LAST-MODIFIED:20250625T190733Z
UID:29466-1750791600-1750795200@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nReviewed the speed limit problem\nLearnt about recursion\n\nHomework:\nSubmit into the google drive here when you are finished! \n\nCreate a recursive function for the factorial.\nIf your input is 3\, then factorial(3) should give you 3*2*1 = 6\nIf your input if 5\, then factorial(5) should give you 5*4*3*2*1 = 120 \nResources to reference:\n– https://www.w3schools.com/java/java_recursion.asp\n– https://jasondeden.medium.com/recursive-functions-in-python-a-visual-walk-through-28cf22cc10e2 \nor if you prefer video format:\n– https://www.youtube.com/watch?v=k-7jJP7QFEM \nHINTS: When doing the recursive call\, think about what the recursive input should be (is it the same input number or something different?)\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-12/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250617T190000
DTEND;TZID=America/Los_Angeles:20250617T200000
DTSTAMP:20260429T114953
CREATED:20250618T031224Z
LAST-MODIFIED:20250618T031224Z
UID:29395-1750186800-1750190400@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nCompleted the Speed Limit problem\n\nHomework:\nSubmit into the google drive here when you are finished! \n\nModify the speed limit problem such that you compare the speeds less.\nFor instance:\n35 35 35 70 70 70\n35 35 35 70 70 70 \nbecomes:\n35 70\n35 70\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-11/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250610T190000
DTEND;TZID=America/Los_Angeles:20250610T200000
DTSTAMP:20260429T114953
CREATED:20250611T030424Z
LAST-MODIFIED:20250611T030424Z
UID:29305-1749582000-1749585600@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nCompleted the Mixing Milk problem\n\nHomework:\nSubmit into the google drive here when you are finished! \n\nImplement your solution for this problem! here\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-10/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250603T190000
DTEND;TZID=America/Los_Angeles:20250603T200000
DTSTAMP:20260429T114953
CREATED:20250604T030650Z
LAST-MODIFIED:20250604T030650Z
UID:29227-1748977200-1748980800@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nCompleted the Shell Game problem\nStarted the Mixing Milk\n\nHomework:\nSubmit into the google drive here when you are finished! \n\nImplement your solution for this problem! here\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-9/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250527T190000
DTEND;TZID=America/Los_Angeles:20250527T200000
DTSTAMP:20260429T114953
CREATED:20250527T234349Z
LAST-MODIFIED:20250528T053559Z
UID:29152-1748372400-1748376000@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nIntroduced Data Structures and Algorithms (DSA)\nStarted Shell Game implementation\n\nHomework:\nSubmit into the google drive here when you are finished! \n\nContinue the shell game problem\, and implement your solution! https://usaco.org/index.php?page=viewproblem2&cpid=891\nHint: You have to use two for loops\, one for the number of initial positions\, and one more for the number of swaps\nYou have been shown how to get input from a file\, so you can use the input as a list where each element is a string. Strings such as “2 1 1” can be parsed with .charAt()\nNote: input files (shell.in) have to be a text file in the same directory as “src” (not inside src)\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-8/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250520T190000
DTEND;TZID=America/Los_Angeles:20250520T200000
DTSTAMP:20260429T114953
CREATED:20250521T030611Z
LAST-MODIFIED:20250521T030611Z
UID:29110-1747767600-1747771200@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nFinished the Wordle game.\nLearnt how to manipulate 2D arrays (and consequently arrays of higher dimensions)\n\nHomework:\nRead and understand this game: https://usaco.org/index.php?page=viewproblem2&cpid=891 \nYou can also begin to try implementing it\, it’ll be a fun challenge 🙂 \nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-7/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250516T180000
DTEND;TZID=America/Los_Angeles:20250516T190000
DTSTAMP:20260429T114953
CREATED:20250516T222119Z
LAST-MODIFIED:20250517T022252Z
UID:29071-1747418400-1747422000@www.ayclogic.com
SUMMARY:6 PM – USACO Bronze – Gamas (Darin Sub)
DESCRIPTION:Today We Did\n\nWe reviewed Wordle games and learnt how to manipulate 2D Lists. Continue in your file named May9_WordleGame.java\, and submit to the google drive: here when you are finished!\n\nHomework:\nContinue the homework\, make it work with 2D arrays. \n// HW\n// Create the framework for this wordle game\, and try to solve it\, keep note of what exact information you are missing to solve this\n\n// note: for this symbol ✓\, you can copy paste from here or google the unicode value for ✓ and use it similar to the previous homework\n\n// the x or ✓ appears directly above the word you guessed\n\n\n\n// the correct word here is quack\n\nGUESSES:\n1. _ _ _ _ _ \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n1. Enter your guess : bloom\n\nGUESSES:\nx x x x x\n1. b l o o m \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n2. Enter your guess : flags\n\nGUESSES:\nx x x x x \n1. b l o o m \nx x ✓ x x \n2. f l a g s \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n3. Enter your guess : bush\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x \n2. f l a g s \nx ✓ x x x\n3. b u s h _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n4. Enter your guess : kite\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x\n2. f l a g s \nx ✓ x x x\n3. b u s h _ \nx x x x x\n4. k i t e _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n5. Enter your guess : quick\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x\n2. f l a g s \nx ✓ x x x\n3. b u s h _ \nx x x x x\n4. k i t e _ \n✓ ✓ x ✓ ✓ \n5. q u i c k \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n6. Enter your guess : addff\nYou lost. The correct answer is "quack"
URL:https://www.ayclogic.com/event/6-pm-usaco-bronze-gamas-darin-sub/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250513T190000
DTEND;TZID=America/Los_Angeles:20250513T200000
DTSTAMP:20260429T114953
CREATED:20250514T000914Z
LAST-MODIFIED:20250514T031037Z
UID:29049-1747162800-1747166400@www.ayclogic.com
SUMMARY:7 PM – Intro to Competitive Programming – Darin
DESCRIPTION:What We Did Today:\n\nFinished the hangman game\nIntroduced the Wordle game\n\nHomework:\nContinue in your file named May13_Wordle.java\, and submit to the google drive: here when you are finished! \n\n// HW\n// Create the framework for this wordle game\, and try to solve it\, keep note of what exact information you are missing to solve this\n\n// note: for this symbol ✓\, you can copy paste from here or google the unicode value for ✓ and use it similar to the previous homework\n\n// the x or ✓ appears directly above the word you guessed\n\n\n\n// the correct word here is quack\n\nGUESSES:\n1. _ _ _ _ _ \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n1. Enter your guess : bloom\n\nGUESSES:\nx x x x x\n1. b l o o m \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n2. Enter your guess : flags\n\nGUESSES:\n1. b l o o m \nx x ✓ x x \n2. f l a g s \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n3. Enter your guess : bush\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x \n2. f l a g s \nx ✓ x x x\n3. b u s h _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n4. Enter your guess : kite\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x\n2. f l a g s \nx ✓ x x x\n3. b u s h _ \nx x x x x\n4. k i t e _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n5. Enter your guess : quick\n\nGUESSES:\nx x x x x\n1. b l o o m \nx x ✓ x x\n2. f l a g s \nx ✓ x x x\n3. b u s h _ \nx x x x x\n4. k i t e _ \n✓ ✓ x ✓ ✓ \n5. q u i c k \n\n6. _ _ _ _ _ \n\nYOUR GUESS:\n6. Enter your guess : addff\nYou lost. The correct answer is "quack"\n\n\n\n\nNotes:\nYou can reach out to me at ddjapri@ayclogic.com if you have any questions! \nYou can find class notes here.
URL:https://www.ayclogic.com/event/7-pm-intro-to-competitive-programming-darin-6/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
BEGIN:VEVENT
DTSTART;TZID=America/Los_Angeles:20250509T180000
DTEND;TZID=America/Los_Angeles:20250509T190000
DTSTAMP:20260429T114953
CREATED:20250510T070530Z
LAST-MODIFIED:20250516T222025Z
UID:29024-1746813600-1746817200@www.ayclogic.com
SUMMARY:6 PM – USACO Bronze – Gamas
DESCRIPTION:Today We Did\n\nWe reviewed Word guessing / Hangman game.\n\nHomework\n\nAttempt an implementation of WordleGame.\n\nUse checkmark (✓) if the letter exist and the position is correct.\nUse x if the letter exists but the position is not correct.\n\n\nBelow is the expected result.\n\nDEBUG - quack\n\n\n1. _ _ _ _ _ \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n1. Enter your guess : bloom\n\n\n1. b l o o m \n\n2. _ _ _ _ _ \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n2. Enter your guess : flags\n\n\n1. b l o o m \n✓ \n2. f l a g s \n\n3. _ _ _ _ _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n3. Enter your guess : bush\n\n\n1. b l o o m \n✓ \n2. f l a g s \n✓ \n3. b u s h _ \n\n4. _ _ _ _ _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n4. Enter your guess : kite\n\n\n1. b l o o m \n✓ \n2. f l a g s \n✓ \n3. b u s h _ \nx \n4. k i t e _ \n\n5. _ _ _ _ _ \n\n6. _ _ _ _ _ \n5. Enter your guess : quick\n\n\n1. b l o o m \n✓ \n2. f l a g s \n✓ \n3. b u s h _ \nx \n4. k i t e _ \n✓ ✓ ✓ ✓ \n5. q u i c k \n\n6. _ _ _ _ _ \n6. Enter your guess : addff\nSorry you lose - quack
URL:https://www.ayclogic.com/event/6-pm-usaco-bronze-gamas-11/
CATEGORIES:Intro To Competitive,Java
END:VEVENT
END:VCALENDAR