LLMS Central - The Robots.txt for AI

helloacm.com

Last updated: 5/15/2026valid

Independent Directory - Important Information

This llms.txt file was publicly accessible and retrieved from helloacm.com. LLMS Central does not claim ownership of this content and hosts it for informational purposes only to help AI systems discover and respect website policies.

This listing is not an endorsement by helloacm.com and they have not sponsored this page. We are an independent directory service with no affiliation to the listed domain.

Copyright & Terms: Users should respect the original terms of service of helloacm.com. If you believe there is a copyright or terms of service violation, please contact us at support@llmscentral.com for prompt removal. Domain owners can also claim their listing.

Current llms.txt Content

Generated by All in One SEO v4.9.6.2, this is an llms.txt file, used by LLMs to index the site.

# Algorithms, Blockchain and Cloud

The Ultimate Computer Technology Blog - The Knowledgebase of Computing

## Sitemaps

- [XML Sitemap](https://helloacm.com/sitemap.xml): Contains all public & indexable URLs for this website.

## Posts

- [Free Wordpress T-Shirt by Submitting a Bug Report](https://helloacm.com/free-wordpress-t-shirt-by-submitting-a-bug-report/) - WordPress is a free and open-source content management system (CMS) written in PHP and paired with a MySQL or MariaDB database. It is roughly 16 megabytes in size. Almost 4 years ago, I submitted my first Bug Report to wordpress, but after a short discussion, it was labeled as "Won't Fix". About 1 year ago, Free Wordpress T-Shirt by Submitting a Bug Report
- [Function to Return the USDT/USDD/USDC Contract Address on Tron Blockchain (Main Net, Nile, Shasta)](https://helloacm.com/function-to-return-the-usdt-usdd-contract-address-on-tron-blockchain-main-net-nile-shasta/) - Function to Return the USDT/USDD/USDC Contract Address on Tron Blockchain (Main Net, Nile, Shasta) USDT and USDD are two stable coins on Tron Blockchain. They are both TRC-20 tokens or coins. There are Shasta and Nile Test Net on which the TRC-20 contract addresses for USDT and USDD are different than those on main nets (TronGrid, Tron Stack). The following are simple functions to return the corresponding contract addresses
- [TRON Blockchain: How to Check the Number of Peers the Tron Node is Connected to?](https://helloacm.com/tron-blockchain-how-to-check-the-number-of-peers-the-tron-node-is-connected-to/) - How to Check the Number of Peers the Tron Node is Connected to? To check the number of peers your Tron node is connected to, you can use either the Tron CLI command or the API. Here's how you can do it using both methods: Using Tron CLI: Open your terminal or command prompt and TRON Blockchain: How to Check the Number of Peers the Tron Node is Connected to?
- [How to Generate an Account on Tron Blockchain using Python SDK?](https://helloacm.com/how-to-generate-an-account-on-tron-blockchain-using-python-sdk/) - Account Generation Process in ETH or Tron Blockchain Tron Blockchain, similar to ETH Blockchain, has the following Wallet Generation Process: Generate a 256-bit Random Number as private key Convert Private Key to secp256k1 uncompressed public key aka 512-bit public key Using Keccak256 to compute the hash value of Public Key, and convert to Hex String How to generate an account on tron blockchain using Python SDK?
- [Automate Freeze (Stake) Balance on Tron Blockchain using NodeJs with TronWeb/TronGrid](https://helloacm.com/automate-freeze-balance-on-tron-blockchain-using-nodejs-with-tronweb-trongrid/) - Automate Freeze Balance on Tron Blockchain using NodeJs with TronWeb/TronGrid We want to freeze the available balance on Tron Blockchain account: this involves first getting available balance using TronWeb NodeJs Library, and then build a transaction using the Transaction Builder, sign the Transaction, and finally broadcast it. You can get a Free API Key on TronGrid. And you can install the tronweb library using npm.
- [How to Claim the Witness (Super Representative) Voting Rewards on Tron Blockchain using Node Js (Javascript)?](https://helloacm.com/how-to-claim-the-witness-super-representative-voting-rewards-on-tron-blockchain-using-node-js-javascript/) - How to Claim the Witness (Super Representative) Voting Rewards on Tron Blockchain using Node Js (Javascript)? In Tron Blockchain, you can freeze your TRX assets as either energy or bandwidth, and then vote for your preferred witnesses (or called SR = Super Representative). Each SR has a different ratio of voting distribution, and you can claim the rewards for your witness votes. With the following Javascript code - you can run
- [Javascript Function to Send Trx on Tron Blockchain based on TronWeb](https://helloacm.com/javascript-function-to-send-trx-on-tron-blockchain-based-on-tronweb/) - Javascript Function to Send Trx on Tron Blockchain based on TronWeb Sending TRX coin on TRON blockchain is easy. We can use the TronWeb library and here is the Javascript function to send Trx to a Tron wallet address: async function sendTrx(fromAddress, toAddress, amount, privateKey, AppKey) { let headers = null; if (AppKey) { headers = { "TRON-PRO-API-KEY": AppKey }; } const tronWeb = new TronWeb({
- [How to Send/Transfer USDT/USDD/USDC Tokens on Tron Blockchain using Tronweb (Javascript)?](https://helloacm.com/how-to-send-transfer-usdt-on-tron-blockchain-using-tronweb/) - How to Send/Transfer USDT/USDD/USDC on Tron Blockchain using Tronweb? On Tron blockchain, the USDT, USDD or USDC token are TRC-20 contracts. You can use the following Javascript function to send over the USDT/USDD/USDC Token from one address to another on the Tron Blockchain. The network parameter can be "nile", "shasta" test net, or the main net otherwise. You also need to specify the amount,
- [Tron Blockchain: Javascript (NodeJs) Function to Get the Frozen Balance (Staked TRX) for Energy and Bandwidth](https://helloacm.com/tron-blockchain-javascript-nodejs-function-to-get-the-frozen-balance-staked-trx-for-energy-and-bandwidth/) - Tron Blockchain: Javascript (NodeJs) Function to Get the Frozen Balance (Staked TRX) for Energy and Bandwidth On TRON blockchain, we can staked TRX (freeze) to earn energy or bandwidth. We can obtain the frozen balance via the tron web library. The tronWeb.trx.getAccount returns a JSON object that contains the account information. The frozen bandwidth is at .frozen and the energy is at account_resource.frozen_balance_for_energy. We can process these two data and then
- [TRON Blockchain: How to Check If a Node is synchronized and Fully Functional?](https://helloacm.com/tron-blockchain-how-to-check-if-a-node-is-synchronized-and-fully-functional/) - How to Check If a Node is synchronized and Fully Functional? To ensure that your Tron Blockchain Node is synchronized and fully functional you can follow these steps: Check the Node Status Use the Tron command line interface (CLI) or API to check the status of your node. The CLI command to check the node TRON Blockchain: How to Check If a Node is synchronized and Fully Functional?
- [How to Get Balance of TRX or USDT/USDD/USDC (TRC-20) Smart Contract Tokens on TRON Blockchain?](https://helloacm.com/how-to-get-balance-of-trx-or-usdt-usdd-trc-20-smart-contract-tokens-on-tron-blockchain/) - How to Get Balance of TRX or USDT/USDD (TRC-20) Smart Contract Tokens on TRON Blockchain?
- [Azure Billing: How to Update the "Sold To" Address?](https://helloacm.com/azure-billing-how-to-update-the-sold-to-address/) - To update the "Sold To Address" in Azure billing, you can follow these steps: Sign in to the Azure portal at https://portal.azure.com/. In the left-hand menu, click on "Cost Management + Billing." In the Cost Management + Billing blade, select "Invoices" from the options. On the Invoices page, click on the invoice for which you Azure Billing: How to Update the "Sold To" Address?
- [A Deep Dive into Helpful Bash Commands for Kubernetes (Show Logs and Describe Pods)](https://helloacm.com/a-deep-dive-into-helpful-bash-commands-for-kubernetes-show-logs-and-describe-pods/) - #post_excerptbash A Deep Dive into Helpful Bash Commands for Kubernetes (Show Logs and Describe Pods)
- [Career Guidance and Required Skills to Become a Software Engineer](https://helloacm.com/career-guidance-and-required-skills-to-become-a-software-engineer/) - Becoming a software engineer is a great career choice, as the demand for skilled professionals in this field continues to grow. To become a successful software engineer, there are several skills that are highly valuable and sought after. Here are some of the key skills you should focus on: Programming Languages: Start by learning popular Career Guidance and Skills Required to Become a Software Engineer
- [Teaching Kids Programming - Minimum Swaps to Get Semi-Ordered Permutation](https://helloacm.com/teaching-kids-programming-minimum-swaps-to-get-semi-ordered-permutation/) - You are given a 0-indexed permutation of n integers nums. A permutation is called semi-ordered if the first number equals 1 and the last number equals n. You can perform the below operation as many times as you want until you make nums a semi-ordered permutation: Pick two adjacent elements in nums, then swap them. Teaching Kids Programming - Minimum Swaps to Get Semi-Ordered Permutation
- [What is HTTP 502 Error and How to Fix a 502 Error?](https://helloacm.com/what-is-http-502-error-and-how-to-fix-a-502-error/) - A 502 error is an HTTP status code that indicates a bad gateway. This error typically occurs when a server acting as a gateway or proxy receives an invalid response from an upstream server. In simpler terms, it means that there was a communication problem between two servers involved in processing your request. Here are What is HTTP 502 Error and How to Fix a 502 Error?
- [Account Unlocked (Unfrozen/Unfreeze) by WirexApps](https://helloacm.com/account-unlocked-unfrozen-unfreeze-by-wirex/) - Wirex is a simple Exchange but that users can only buy and sell Crypto at the market rate (place market orders). It provides a Crypto card (WirexApps) that allows you to perform conversion between Crypto to Crypto, Fiat to Crypto, or Crypto to Fiat. With Wirex Card, you can cash out your Crypto. Two days Account Unlocked (Unfrozen/Unfreeze) by Wirex
- [How to Fix Error converting YAML to JSON: yaml: line XXX: mapping values are not allowed in this context](https://helloacm.com/how-to-fix-error-converting-yaml-to-json-yaml-line-xxx-mapping-values-are-not-allowed-in-this-context/) - The error message "error converting YAML to JSON: yaml: line XX: mapping values are not allowed in this context" typically indicates an issue with the syntax of your YAML file. YAML (Yet Another Markup Language) and JSON (JavaScript Object Notation) are both formats used for structured data, but they have slightly different syntax rules. A How to Fix Error converting YAML to JSON: yaml: line XXX: mapping values are not allowed in this context
- [How to Get the Original File Name, Title, File Size, Video Format (mp4 or mov) and Length for Videos using Youtube Data API?](https://helloacm.com/how-to-get-the-original-file-name-title-file-size-video-format-mp4-or-mov-and-length-for-videos-using-youtube-data-api/) - When we upload the videos to Youtube, we might want to use the Youtube API to get the meta data for the videos. For example: Original File Name, File Size, Video Format (mp4 or mov), and Video Length. Video File Size via Youtube Data API The YouTube Data API provides a lot of metadata about How to Get the Original File Name, Title, File Size, Video Format (mp4 or mov) and Length for Videos using Youtube Data API?
- [Teaching Kids Programming - Max Number of Connected Components in a Directed Graph (Detonate the Maximum Bombs) via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-max-number-of-connected-components-in-a-directed-graph-detonate-the-maximum-bombs/) - Teaching Kids Programming - Max Number of Connected Components in a Directed Graph (Detonate the Maximum Bombs) via Recursive Depth First Search Algorithm You are given a list of bombs. The range of a bomb is defined as the area where its effect can be felt. This area is in the shape of a circle with the center as the location of the bomb. The bombs are represented by a 0-indexed 2D integer array bombs where bombs[i] =
- [Teaching Kids Programming - Breadth First Search Algorithm to Compute the Maximum Number of Connected Components in a Directed Graph (Detonate the Maximum Bombs)](https://helloacm.com/teaching-kids-programming-breadth-first-search-algorithm-to-compute-the-maximum-number-of-connected-components-in-a-directed-graph-detonate-the-maximum-bombs/) - You are given a list of bombs. The range of a bomb is defined as the area where its effect can be felt. This area is in the shape of a circle with the center as the location of the bomb. The bombs are represented by a 0-indexed 2D integer array bombs where bombs[i] = Teaching Kids Programming - Breadth First Search Algorithm to Compute the Maximum Number of Connected Components in a Directed Graph (Detonate the Maximum Bombs)
- [Being part of Utopian Moderating Team is Great ! (Intro Post)](https://helloacm.com/being-part-of-utopian-moderating-team-is-great-intro-post/) - Being part of Utopian Moderating Team is Great ! (Intro Post)Note: Utopian Project was shutdown on Steem Blockchain, it was more like a prototyping project. I have been moderating the utopian posts for a few weeks now and I enjoy it. The team members are nice and I did learn a lot, and that is not just the technology part. I am aged XXXX, currently
- [How to Specify the Additional Parameters for Docker Run Command When Overriding --entrypoint?](https://helloacm.com/how-to-specify-the-additional-parameters-for-docker-run-command-when-overriding-entrypoint/) - When you override the --entrypoint in a docker run command, you can provide additional parameters after the image name. These additional parameters will be passed to the new entrypoint. Here's the syntax for that: docker run --entrypoint [new-entrypoint] [image] [param1] [param2] ... [paramN] For example, if your Docker image is my_image, the new entrypoint is How to Specify the Additional Parameters for Docker Run Command When Overriding --entrypoint?
- [From Phone Booths to Large Language Models: The Twilight of Traditional Programming](https://helloacm.com/from-phone-booths-to-large-language-models-the-twilight-of-traditional-programming/) - From Phone Booths to AI: The Twilight of Handwritten Code The C++ Books in the Phone Booth When Phone Booths Become Libraries and Programming Becomes Prompting Traditional Programming in the Age of AI Phone Booths, Programming Books, and the End of an Era From Phone Booths to AI: The Twilight of Handwritten Code After dinner, AI,Large Language Models,Programming,Traditional Programming,Handwritten Code,Phone Booths,British Life,Community Library,Technology Change,Digital Transformation,C++,HTML,Overseas Life From Phone Booths to AI: The Twilight of Handwritten Code The C++ Books in the Phone Booth When Phone Booths Become Libraries and Programming Becomes Prompting Traditional Programming in the Age of AI Phone Booths, Programming Books, and the End of an Era From Phone Booths to AI: The Twilight of Handwritten Code After dinner, I walked past an old British phone booth that had been turned into a tiny community library. Among the donated books were HTML and C++ programming books, which reminded me of how phone booths once connected people at great cost, but have now become relics of another era. With the rise of AI and large language models, handwritten code may one day follow the same path — remembered like phone booths and abacuses, as part of a fading technological age.
- [Introducing ExamGPT - Your AI Test Coach](https://helloacm.com/introducing-examgpt-your-ai-test-coach/) - At the end of last year, I started preparing for Microsoft certifications. Initially, I created a prompt that worked really well, but having to copy and paste it every time was a bit tedious. So I thought—why not turn it into a custom GPT? That’s how ExamGPT was born. The setup is actually very simple. Introducing ExamGPT - Your AI Test Coach
- [ChatGPT Image 2.0 - Casual Selfie of Me](https://helloacm.com/chatgpt-image-2-0-casual-selfie-of-me/) - ChatGPT Image 2.0 - Text2Image ChatGPT Image 2.0 is getting the vibe! It produces really realistic photos/images. Prompt 1: Don’t pretend to know what I actually look like. Based on our past conversations, my experiences, profession, work, and life, translate your understanding of my personality, temperament, way of thinking, and communication style into a visual ChatGPT Image 2.0 - Casual Selfie of Me
- [Teaching Kids Programming - Introduction to Combinatorial Mathematics 2 (Catalan Number)](https://helloacm.com/teaching-kids-programming-introduction-to-combinatorial-mathematics-2-catalan-number/) - Introduction to Combinatorial Mathematics (2): Catalan Numbers Catalan numbers are one of the most important sequences in combinatorics. They appear in many counting problems that look very different on the surface, but actually share the same underlying structure: balance, recursion, and non-crossing constraints. In this post, we will introduce the Catalan numbers, show several important Teaching Kids Programming - Introduction to Combinatorial Mathematics 2 (Catalan Number)
- [AI Transforms Photos into Ghibli Style? ChatGPT-4o Costs Money, But Here's a Free Method!](https://helloacm.com/ai-transforms-photos-into-ghibli-style-chatgpt-4o-costs-money-but-heres-a-free-method/) - Generate Ghibli Style Photos via Using the Image to Image Feature (Grok 3) These past few days, Ghibli-style images have flooded social media, from WeChat Moments to X (Twitter). Even Elon Musk posted about this new feature in ChatGPT-4o. It feels like, overnight, AI has become capable of replacing most designers' jobs. This AI image AI Transforms Photos into Ghibli Style? ChatGPT-4o Costs Money, But Here's a Free Method!
- [Programming is not my wife's thing.](https://helloacm.com/programming-is-not-my-wifes-thing/) - I used to try teaching my wife programming, but it quickly became clear that it just was not her thing. Over time, I think she has forgotten most of what I taught her, which honestly is not surprising, because people rarely retain knowledge in areas they are not genuinely interested in. That experience also taught Programming is not my wife's thing.
- [The touch command in Windows Powershell](https://helloacm.com/the-touch-command-in-windows-powershell/) - The touch Command in PowerShell (Linux-Compatible) If you come from Linux/macOS, you probably miss touch: create a file if it doesn’t exist, otherwise update its modified time. PowerShell doesn’t ship with a built-in touch, but you can add one that behaves like the Unix command (including multiple files and wildcards). This post gives you a The touch command in Windows Powershell
- [Competitive Programming: Two Simple Tricks in C++ To Make Code Faster](https://helloacm.com/competitive-programming-two-simple-tricks-in-c-to-make-code-faster/) - Competitive programmers ALWAYS use these two lines of code. Here's why: C++ has two functions: "cin" - Stands for character input. Reads an input from the standard IO. "cout" - Outputs text (like printing to a terminal). By default, these are synchronized with C's "scanf" and "printf" functions. When we use "cout" to print something, Competitive Programming: Two Simple Tricks in C++ To Make Code Faster
- [Prompt Engineering: Sharing a Prompt for Preparing Your Exams](https://helloacm.com/prompt-engineering-sharing-a-prompt-for-preparing-your-exams/) - A Universal AI Exam Preparation Prompt Template An AI Practice Prompt for Any Certification Exam A General-Purpose AI Exam Coach Prompt (For All Types of Exams) An AI Exam Preparation Prompt for Any Exam Turn AI into Your Universal Exam Coach How I Use This Prompt to Prepare for Various Certification Exams An AI Exam Prompt Engineering: Sharing a Prompt for Preparing Your Exams
- [System Design: Fan-out/Fan-in Pattern](https://helloacm.com/system-design-fan-out-fan-in-pattern/) - Fan-out/fan-in refers to the pattern of executing multiple units of work in parallel and then synchronizing on their completion. While it’s often discussed in the context of serverless functions, the concept is not limited to them. More generally, fan-out/fan-in describes a concurrency pattern that can be applied wherever tasks can be decomposed into independent pieces—such System Design: Fan-out/Fan-in Pattern
- [ChatGPT: New Image Creation (art school)](https://helloacm.com/chatgpt-new-image-creation-art-school/) - ChatGPT has a new feature "Image Generation" which allows you to easily transform exist images with a predefined set of prompts. You then don't need to prepare the prompts. Rather, all you need is to select an image and a pre-defined "style" which contains the prompt. Click "Images" from Left Navigation Bar Select Style and ChatGPT: New Image Creation (art school)
- [The Terminal Software Engineer Level](https://helloacm.com/the-terminal-software-engineer-level/) - The Terminal Software Engineer Level the software engineers are assigned a level so that they can work hard, and be promoted into next levels in the career ladder. In Big5: Microsoft, Apple, Google, Amazon and Facebook, the software engineers are assigned a level so that they can work hard, and be promoted into next levels in the career ladder. See this from levels.fyi The Terminal Level means that you can stay in that level comfortably if you enjoy doing so. You don't get
- [Understanding std::transform_reduce in Modern C++](https://helloacm.com/understanding-stdtransform_reduce-in-modern-c/) - Understanding std::transform_reduce in Modern C++ std::transform_reduce is a powerful C++17 algorithm that combines the functionality of transform and reduce (or accumulate) in a single pass. It allows you to apply a transformation to elements and then reduce them using a binary operation, which can help write concise and efficient code. Syntax template
- [Wordpress: How to Output Full Text in the Feed?](https://helloacm.com/wordpress-how-to-output-full-text-in-the-feed/) - How to Make WordPress RSS /feed Output Full Text WordPress RSS Full Content Output Guide How to Show Full Text in WordPress RSS Feeds WordPress: Three Ways to Output Full Content in RSS Feeds A Complete Guide to Enabling Full Text Output in WordPress /feed RSS Only Shows Excerpts? How to Switch to Full Text Wordpress: How to Output Full Text in the Feed?
- [Nvidia, I’m coming again — this time I’m tougher](https://helloacm.com/nvidia-im-coming-again-this-time-im-tougher/) - Friends who know me well know that I have been persistently interviewing, but now I only target big tech companies. If it’s not a big company, I won’t interview. This is not arrogance, but reality: after Microsoft Research Cambridge / MSRC, there are indeed only a few places left that can really help me keep One year later, back at Nvidia: I really got stronger From rejection to progress: my two encounters with Nvidia Interviews are truth mirrors: each one makes me clearer about myself Rejection is not the end, but the start of coming back stronger Why I only interview at big tech: growth notes from two Nvidia interviews Two rounds at Nvidia showed me my weak spots How a big-tech rejection became my growth fuel The real growth path for engineers: keep interviewing, keep upgrading My two clashes with Nvidia: evolving from k8s to C++ 90-minute technical interview, three days of waiting: goodbye Nvidia, and thank you That Nvidia rejection helped me fix the most critical gaps Nvidia, I’m coming again — this time I’m tougher Big-tech interviews: an ongoing practice of upgrading After two Nvidia rejections, I’m getting stronger and stronger
- [Introduction to Parquet Files, Read/Write using Python](https://helloacm.com/introduction-to-parquet-files-read-write-using-python/) - Introduction to Parquet Files Reading and Writing Parquet Files with Python Big Data Storage Optimization: Understanding Parquet Essential Parquet Handling Tips for Python Data Analysis Columnar Storage Insights: Parquet Files and Performance Working with Nested Parquet Data using Python and PyArrow From CSV to Parquet: A Python Data Format Conversion Guide What is a Parquet
- [Implement a Lock Acquire and Release in C++](https://helloacm.com/implement-a-lock-acquire-and-release-in-c/) - Implementing a Spinlock Using the Atomic TAS Instruction Implementing a Spinlock Using the Atomic TAS Instruction Building a Spinlock from Scratch with Atomic TAS Implementing a Minimal Mutex Using Test-and-Set Inside Spinlocks: TAS, Atomicity, and Busy Waiting Atomic Operations and Spinlocks: Thread Synchronization in C From Atomic Instructions to Locks: A Complete Guide to TAS Implement a Lock Acquire and Release in C++ Implementing a Spinlock Using the Atomic TAS Instruction Building a Spinlock from Scratch with Atomic TAS Implementing a Minimal Mutex Using Test-and-Set Inside Spinlocks: TAS, Atomicity, and Busy Waiting Atomic Operations and Spinlocks: Thread Synchronization in C From Atomic Instructions to Locks: A Complete Guide to TAS and Spinlocks Hands-On Spinlock Implementation: tryLock, lockAcquire, and lockRelease Your First Spinlock: A TAS-Based Implementation in C Atomic Exchange and Thread Mutual Exclusion: A Guide to Implementing Spinlocks
- [Cambridge Science Park: Microsoft, AMD and Raspberry Pi (Neighbours)](https://helloacm.com/cambridge-science-park-microsoft-amd-and-raspberry-pi-neighbours/) - Microsoft has two offices in Cambridge. One is located right across from the railway station at 21 Station Road, with Amazon’s office next door and Apple’s new building recently opened just beside it. The other office is part of Microsoft Research, situated in Cambridge Science Park at number 198. This office likely originated from Microsoft’s Microsoft has two offices in Cambridge. One is located right across from the railway station at 21 Station Road, with Amazon’s office next door and Apple’s new building recently opened just beside it. The other office is part of Microsoft Research, situated in Cambridge Science Park at number 198. This office likely originated from Microsoft’s acquisition of MetaSwitch, and naturally became part of the Science Park. Later, some teams from the Station Road office also moved there.
- [Design a Binary-Integer-Divisble-By-Three Stream using Math](https://helloacm.com/design-a-binary-integer-divisble-by-three-stream-using-math/) - Design a Binary-Integer-Divisble-By-Three Stream using Math Let's design a data stream that takes a bit either 1 or 0, and then returns true/false to indicate that the integer (constructed by the bits so far) is divisible by three or not. For example: Take 1 - False as 1 is not divisble by three. Take 1 - Yes, as 11 in Binary
- [BASH Script to Compute the Math.PI constant via Monte Carlo Simulation](https://helloacm.com/bash-script-to-compute-the-math-pi-constant-via-monte-carlo-simulation/) - BASH Script to Compute the Math.PI constant via Monte Carlo Simulation Based on the calc function defined in BASH via AWK, we can perform floating point computation in BASH. The $RANDOM variable gives a psuedo random integer that is within the range of [0, 32767] aka 16-bit. Then, we can generate a random point (X, Y) and compute the distance to the origin (0, 0). Count
- [ChatGPT-4 uses Math Wolfram Plugin to Solve a Math Brain Teaser Question](https://helloacm.com/chatgpt-4-uses-math-wolfram-plugin-to-solve-a-math-brain-teaser-question/) - This post, we look at a simple Math question (Brain Teaser), and we solve it by Python. We take a look at the LLM (Large Language Model): ChatGPT3.5, and ChatGPT4. With ChatGPT-Plus Subscription (Currently $20 per month + VAT), we can enable the Plugins for ChatGPT-4, thus, we also take a look at the ChatGPT-4 ChatGPT-4 uses Math Wolfram Plugin to Solve a Math Brain Teaser Question Artificial General Intelligence, AGI
- [Tetration Operator in Math Simply Explained with Python Algorithms](https://helloacm.com/tetration-operator-in-math-simply-explained-with-python-algorithms/) - What is Tetration Operator in Math? Tetration is an operation in mathematics that involves iterated exponentiation. It is part of the sequence of hyperoperations that extend beyond addition, multiplication, and exponentiation. In tetration, a number is raised to the power of itself repeatedly a specified number of times. The notation for tetration of a number Tetration Operator in Math Simply Explained with Python Algorithms
- [Fundamental mathematical formulas for machine learning (optimization): argmax Reasoning Backward from the Future](https://helloacm.com/fundamental-mathematical-formulas-for-machine-learning-optimization-argmax-reasoning-backward-from-the-future/) - argmax: Reasoning Backward from the Future The fundamental mathematical principle behind all of machine learning (and optimization) is the following formula: arg_max_{x∈X} F(x) It means: among all possible inputs [math] x \in X [/math], find the one that maximizes the objective function F(x). The result of this expression is the optimal input x, not the Fundamental mathematical formulas for machine learning (optimization): argmax Reasoning Backward from the Future
- [Toss a Coin 256 Times: The Math Behind an Unbreakable Bitcoin Private Key](https://helloacm.com/toss-a-coin-256-times-the-math-behind-an-unbreakable-bitcoin-private-key/) - Why Cracking a Bitcoin Key Is Harder Than You Can Possibly Imagine I often see some brute-force programs constantly trying to crack Bitcoin wallet keys, claiming they've been lucky enough to stumble upon the keys to a few wallets and moved tens of thousands of dollars from them. Toss a Coin 256 Times, and You "Why Cracking a Bitcoin Key Is Harder Than You Can Possibly Imagine" "Toss a Coin 256 Times: The Math Behind an Unbreakable Bitcoin Private Key" "4 Billion Galaxies and 37 Universes: The True Scale of Bitcoin Security" "Brute-Forcing Bitcoin? Here's Why That's Practically Science Fiction" "The Cryptographic Fortress of Bitcoin: A 256-Bit Miracle"
- [Understanding the Sigma Function: Divisors, Multiplicativity, and the Formula](https://helloacm.com/understanding-the-sigma-function-divisors-multiplicativity-and-the-formula/) - Understanding the Sigma Function: Divisors, Multiplicativity, and the Formula Understanding the Sigma Function: From Divisors to a Powerful Closed Formula Why the Sigma Function Is Multiplicative: A Step-by-Step Derivation The Mathematics Behind σ(n): Divisors, Prime Powers, and the Product Formula A Deep Dive Into the Sum-of-Divisors Function (σ): Theory + Python Code Decoding σ(n): The Understanding the Sigma Function: From Divisors to a Powerful Closed Formula Why the Sigma Function Is Multiplicative: A Step-by-Step Derivation The Mathematics Behind σ(n): Divisors, Prime Powers, and the Product Formula A Deep Dive Into the Sum-of-Divisors Function (σ): Theory + Python Code Decoding σ(n): The Elegant Structure of Divisors and the Geometric Series Trick Prime Factorization Magic: How the Sigma Function Really Works Sigma Function Explained Clearly — With Proofs and Efficient Python Code
- [Why Parallelism Isn’t Infinite: Amdahl vs Gustafson Explained Simply](https://helloacm.com/why-parallelism-isnt-infinite-amdahl-vs-gustafson-explained-simply/) - Amdahl’s Law vs. Gustafson’s Law — Full Tutorial with Derivations, Use Cases, and Python Plot Amdahl’s Law vs Gustafson’s Law: Full Tutorial, Derivations, Use Cases, and Python Plot Understanding Parallel Speedup: Amdahl’s Law and Gustafson’s Law Explained with Code Parallel Computing Essentials: Amdahl’s Law, Gustafson’s Law, and Speedup Modeling How Parallel Speedup Works: Complete Guide Amdahl’s Law vs Gustafson’s Law: Full Tutorial, Derivations, Use Cases, and Python Plot Understanding Parallel Speedup: Amdahl’s Law and Gustafson’s Law Explained with Code Parallel Computing Essentials: Amdahl’s Law, Gustafson’s Law, and Speedup Modeling How Parallel Speedup Works: Complete Guide to Amdahl’s and Gustafson’s Laws Parallel Scaling Explained: Deriving and Comparing Amdahl’s and Gustafson’s Laws Amdahl vs Gustafson: The Complete Guide to Parallel Speedup (with Python Code) Parallel Performance Modeling: Amdahl’s Law, Gustafson’s Law, and Real-World Use Cases Learn Parallel Speedup: Math, Intuition, Use Cases, and Python Visualization Parallel Computing: The Two Laws You Must Know (Amdahl & Gustafson) Parallel Speedup for Engineers: Amdahl’s Law, Gustafson’s Law, and Python Implementation From Theory to Code: Modeling Parallel Speedup with Amdahl and Gustafson A Practical Guide to Parallel Speedup: Amdahl’s Law, Gustafson’s Law, and Visualization Why Parallelism Isn’t Infinite: Amdahl vs Gustafson Explained Simply The Truth About Parallel Speedup: Amdahl’s Limits vs Gustafson’s Scaling Parallel Computing Myths vs Reality: What Amdahl and Gustafson Teach Us
- [Teaching Kids Programming - Introduction to Combinatorial Mathematics 1 (Pascal Triangle/Binomial)](https://helloacm.com/teaching-kids-programming-introduction-to-combinatorial-mathematics-1/) - Introduction to Math Combination Combinations count the ways to choose items when order does not matter. This guide builds intuition from a simple grid-walking example, introduces binomial notation, derives the formula, explains the recurrence [math]C(n,m)=C(n-1,m-1)+C(n-1,m)[/math], and connects everything to Pascal's triangle. Grid walking example — paths from bottom-left to top-right Imagine you must move only Teaching Kids Programming - Introduction to Combinatorial Mathematics 1
- [The Hidden Engine of Performance: It’s All About Where the Data Lives (Cache is the King)](https://helloacm.com/the-hidden-engine-of-performance-its-all-about-where-the-data-lives-cache-is-the-king/) - The Hidden Engine of Performance: It’s All About Where the Data Lives 1. The Real Reason Systems Are Fast: It’s All About Cache 2. Forget CPU Speed — Data Locality Wins Every Time 3. Why Cache Is the Hidden Engine of All High-Performance Systems 4. Performance Isn’t About GHz. It’s About Distance. 5. Your CPU The Hidden Engine of Performance: It’s All About Where the Data Lives (Cache is the King) performance, cpu-cache, data-locality, computer-architecture, high-performance-computing, memory-hierarchy, low-latency, networking, virtualization, numa, hft, ai-performance, robotics, cache-optimization
- [Microsoft Shareholders Reject Proposal to Add Bitcoin to Balance Sheet](https://helloacm.com/microsoft-shareholders-reject-proposal-to-add-bitcoin-to-balance-sheet/) - Every year, I receive a letter from Microsoft because I own a few shares of Microsoft stock (RSUs), which also makes me a shareholder. The letter invites me to attend Microsoft’s annual shareholder meeting and lists several resolutions to be discussed, including recommendations from shareholders, such as Vote or Deny. In the last letter I Microsoft Shareholders Reject Proposal to Add Bitcoin to Balance Sheet
- [Finding the Predecessor and Successor Node of a Binary Search Tree](https://helloacm.com/finding-the-predecessor-and-successor-node-of-a-binary-search-tree/) - Finding the Predecessor and Successor Node of a Binary Search Tree All implementation of finding sucessor or predecessor takes O(1) constant space and run O(N) time (when BST is just a degraded linked list) - however, on average, the complexity is O(LogN) where the binary tree is balanced. A Binary Search Tree (BST) is a commonly used data structure that can be used to search for an item in O(LogN) time. A BST has the following characteristics: its left nodes are smaller than the root, and its right nodes are larger than the root. If we perform an inorder traversal—left nodes first, then
- [Deep Dive into Reinforcement Learning: Understanding the Q-Learning Algorithm](https://helloacm.com/deep-dive-into-reinforcement-learning-understanding-the-q-learning-algorithm/) - Reinforcement Learning (RL) — The Art of Learning by Trial and Error Reinforcement Learning 101: The Art of Learning by Trial and Error Deep Dive into Reinforcement Learning: Understanding the Q-Learning Algorithm How Do Machines Learn to Make Their Own Decisions? Reinforcement Learning Explained Learning from Rewards: The Trial-and-Error Intelligence Behind AI Reinforcement Learning (RL) Reinforcement Learning 101: The Art of Learning by Trial and Error Deep Dive into Reinforcement Learning: Understanding the Q-Learning Algorithm How Do Machines Learn to Make Their Own Decisions? Reinforcement Learning Explained Learning from Rewards: The Trial-and-Error Intelligence Behind AI
- [How to Earn Microsoft/Bing Points and Redeem Rewards by using Bing Search Engine and Edge Browser?](https://helloacm.com/how-to-earn-microsoft-claim-points-and-redeem-rewards-by-using-bing-search-engine-and-edge-browser/) - Microsoft Rewards is a free program offered by Microsoft that allows you to earn rewards points for doing things you already do, like searching the web with Bing or making purchases from Microsoft's online store. Microsoft Rewards Points (MRP) can be earned via many ways, and one of them is to use Edge Browser as How to Earn Microsoft Claim Points and Redeem Rewards by using Bing Search Engine and Edge Browser?
- [How to Send Keys using PowerShell or VBScript or JScript via WScript.Shell COM Object (Simulate Keystrokes)?](https://helloacm.com/how-to-send-keys-using-powershell-and-wscript-simulate-keystrokes/) - In the Windows environment, all three types of scripts (PowerShell, VBScript, and JScript) use CreateObject to invoke the COM object WScript.Shell in order to simulate keystrokes. For example, you can simulate pressing the Scroll Lock key once every minute to keep your status online (Keep Alive). Note that the Scroll Lock key may not be How to Send Keys using PowerShell or VBScript or JScript via WScript.Shell COM Object (Simulate Keystrokes)?
- [Alpha Arena: How AI Performs in the Real Crypto Market](https://helloacm.com/alpha-arena-how-ai-performs-in-the-real-crypto-market/) - These days, an interesting experiment is drawing attention both in China and abroad — nof1.ai has launched a challenge to test how well different AI models can trade and invest in the cryptocurrency market. Right now, six top AI models are actually trading with real money to see who can earn the most profit. It’s Alpha Arena: How AI Performs in the Real Crypto Market
- [Detecting Compile-time vs Runtime in C++: if consteval vs std::is_constant_evaluated()](https://helloacm.com/detecting-compile-time-vs-runtime-in-c-if-consteval-vs-stdis_constant_evaluated/) - C++ has been steadily adding features to let programmers distinguish code that runs at compile time from code that runs at runtime. Two important tools for this are the function std::is_constant_evaluated() (C++20) and the language-level if consteval (C++23). This post explains both, shows practical examples, compares their guarantees and trade-offs, and suggests when to use Detecting Compile-time vs Runtime in C++: if consteval vs std::is_constant_evaluated()
- [Teaching Kids Programming - Two Ways to Prove Square Root of Two is Irrational (proof by contradiction and geometric infinite descent)](https://helloacm.com/teaching-kids-programming-two-ways-to-prove-square-root-of-two-is-irrational-proof-by-contradiction-and-geometric-infinite-descent/) - How to Prove √2 Is Irrational — Two Methods (Proof by Contradiction & Geometric Infinite Descent) Introduction The statement "√2 is irrational" means there are no integers [math]a[/math] and [math]b\neq 0[/math] with [math]\gcd(a,b)=1[/math] such that [math]\sqrt{2}=\dfrac{a}{b}[/math]. Method 1 — Proof by Contradiction Assume, for contradiction, that [math]\sqrt{2}[/math] is rational. Then there exist integers [math]a[/math] and Teaching Kids Programming - Two Ways to Prove Square Root of Two is irrational (proof by contradiction and geometric infinite descent)
- [This Year's Microsoft's Hackathon](https://helloacm.com/this-years-microsofts-hackathon/) - This week, I joined Microsoft's Hackathon for the first time. In fact, big tech companies like Microsoft, Amazon, and Meta all host Hackathons every year—it’s part of their culture. Microsoft’s Hackathon usually takes place in September and lasts three days. Engineers and researchers can freely form teams to work on fun projects around the themes This Year's Microsoft's Hackathon
- [Turn Your Raspberry Pi into a Family Network Drive: 2TB WD Hard Drive Setup for Kids’ Macs](https://helloacm.com/turn-your-raspberry-pi-into-a-family-network-drive-2tb-wd-hard-drive-setup-for-kids-macs/) - “Create a 2TB Network Drive with Raspberry Pi for Your Family” “Raspberry Pi + WD Hard Drive: Easy Network Storage for Kids’ Macs” “Family File Sharing Made Easy: DIY Raspberry Pi Network Drive” “Turn a Raspberry Pi into a 2TB Shared Hard Drive for Home” “Save Space on Your Kids’ Macs with a Raspberry Pi Turn Your Raspberry Pi into a Family Network Drive: 2TB WD Hard Drive Setup for Kids’ Macs
- [From Idea to GitHub Pages: Building Tools with AI and Vibe Coding](https://helloacm.com/from-idea-to-github-pages-building-tools-with-ai-and-vibe-coding/) - Built and Open-Sourced A Few Mini Tools with AI Recently, I used ChatGPT-4o and o4-mini to quickly build and open-source a few handy tools (100% client based, local/javascript). The motivation was simple—every time I needed to convert YAML/JSON or do Base64 encoding, I found myself Googling for some online tools. Then I thought, why not From Idea to GitHub Pages: Building Tools with AI and Vibe Coding
- [Chessly (British Short Hairs) Classified as Persian Cat by ResNet-50](https://helloacm.com/chessly-british-short-hairs-classified-as-persian-cat-by-resnet-50/) - Chessly is one of my cat, she is a British shorthairs. However, she has been categorized as a Persian Cat by the ResNet-50 Image Classification Model. Introduction to ResNet-50 ResNet (Residual Network) was proposed by Microsoft Research in 2015. It solves the degradation problem in deep neural networks through residual structures. ResNet-50 is one of Chessly (British Short Hairs) Classified as Persian Cat by ResNet-50
- [A Complete Guide to Radix Sort in Python with Examples](https://helloacm.com/a-complete-guide-to-radix-sort-in-python-with-examples/) - Python Radix Sort Tutorial: Sorting Integers, Negatives, and Floats A Complete Guide to Radix Sort in Python with Examples Python Sorting Algorithms: Radix Sort Explained Efficient Number Sorting in Python Using Radix Sort Radix Sort in Python: From Positive Integers to Floats Introduction to Radix Sort in Python Radix Sort is a non-comparative sorting algorithm A Complete Guide to Radix Sort in Python with Examples
- [A Complete Guide to Sorted Data Structures in Python](https://helloacm.com/a-complete-guide-to-sorted-data-structures-in-python/) - Ordered data structures are very useful in programming, especially in algorithm competitions and competitive programming. In Python, the Sorted Containers library mainly provides three such data structures: SortedDict, SortedSet, and SortedList. Mastering Python’s Sorted Data Structures: From Built-ins to sortedcontainers A Complete Guide to Sorted Data Structures in Python When and How to Use Sorted
- [How would you do Binary Search to Locate a Block given a TimeStamp (for Any Blockchain)?](https://helloacm.com/how-would-you-do-binary-search-to-locate-a-block-given-a-timestamp-for-any-blockchain/) - A couple of days ago, I wanted to look up the block numbers of some important records on the STEEM blockchain — such as when I: registered my account #4253590 became a witness #20190755 mined my first block #20390040 was delegated SP by Justin Sun #41676911 and received a DAO payout #95403889 I only knew A couple of days ago, I wanted to look up the block numbers of some important records on the STEEM blockchain — such as when I: registered my account #4253590 became a witness #20190755 mined my first block #20390040 was delegated SP by Justin Sun #41676911 and received a DAO payout #95403889 I only knew
- [Stock Prices of Google and Microsoft Before and After Gemini](https://helloacm.com/stock-prices-of-google-and-microsoft-before-and-after-gemini/) - A week ago, Google's Gemini Demo was mind-blowing but later it was reported that the demo video was edited, basically engineer prompted the AI offline and the use the text-to-voice engine to make the video look real time iterative. It looks to me it is cheating. Anyway, the Google stock price spiked and then dived.. Stock Prices of Google and Microsoft Before and After Gemini
- [Unleashing Innovation: Inside Hackathon Events at Big Internet Companies (Hackathon T-shirt from Microsoft)](https://helloacm.com/unleashing-innovation-inside-hackathon-events-at-big-internet-companies-hackathon-t-shirt-from-microsoft/) - Microsoft has held Hackathon events yearly - for a group of engineers to work on interesting projects - not necessary related to the work projects. Introduction to Hackathon In a world that thrives on innovation and fast-paced technology, hackathons have emerged as a cultural hallmark of big internet companies. These intense, often adrenaline-filled events are Unleashing Innovation: Inside Hackathon Events at Big Internet Companies (Hackathon T-shirt from Microsoft)
- [A Glimpse on Microsoft Research Cambridge](https://helloacm.com/a-glimpse-on-microsoft-research-cambridge/) - A Glimpse on Microsoft Research Cambridge. I recently attended a seminar in Microsoft Research (Cambridge, UK) and was impressed by its office.
- [Microsoft's Excel Just Got Smarter: The New Copilot Function](https://helloacm.com/microsofts-excel-just-got-smarter-the-new-copilot-function/) - All in AI. Microsoft has integrated AI (Copilot) to its Office products. I’m thrilled to share that Excel has added COPILOT directly into formulas! =COPILOT(prompt,[context],...) This deceptively simple syntax brings the power of large language models (LLMs) into your spreadsheet logic—unlocking a whole new era of financial planning, analysis, and data modeling. Why It’s a Microsoft's Excel Just Got Smarter: The New Copilot Function
- [Excel Tip: Faster Auto-complete](https://helloacm.com/excel-tip-faster-auto-complete/) - Excel Tip: Faster Auto-complete, The Microsoft Excel is heavily used and widely used.
- [Four Useful Cell Functions/Values in Excel](https://helloacm.com/four-useful-cell-functionsvalues-in-excel/) - Four Useful Cell Functions/Values in Excel Microsoft Excel is a powerful spreadsheet that you can put values, strings, and even formulas in each cells. The following are four useful/important functions regarding to cells in Excel. Row Function The Row() simply returns the row-number, starting with 1. For example, if you put "=Row()" (without quotes) at cell A1, it returns 1. Column row, column, address, indirect
- [How to Calculate Mortgage Monthly Payment using Excel (with Formula) ?](https://helloacm.com/how-to-calculate-mortgage-monthly-payment-using-excel-with-formula/) - How to Calculate Mortgage Monthly Payment using Excel (with Formula) ?Most people requires mortgage to purchase a house (property). You borrow money from the bank and promise to pay back (with interests) within a specified periods e.g. 25 years. The total amount of money you borrow from the bank is also called "The principal of the Loan"
- [Excel Sheet to Calculate the Miles Per Gallon (Average Gas Cost)](https://helloacm.com/excel-sheet-to-calculate-the-miles-per-gallon-average-gas-cost/) - Excel Sheet to Calculate the Miles Per Gallon (Average Gas Cost) (1) Each time you go for petrol/disel, you would need to add a new record to the columns noting down the cost and the mileage.\r\n(2) Similarly, if you go for repairs, services you can record the cost as well.\r\n(3) Insurance, MOT etc are optional.\r\n\r\n EXCEL Download the Sample Excel (Dropbox) https://rot47.net/5Z The excel sheet contains several columns to update. (1) Each time you go for petrol/disel, you would need to add a new record to the columns noting down the cost and the mileage. (2) Similarly, if you go for repairs, services you can record the cost as well.
- [How to Transform the Values in Excel Files to a Column of Values?](https://helloacm.com/how-to-transform-the-values-in-excel-files-to-a-column-of-values/) - How to Transform the Values in Excel Files to a Column of Values? The Excel has inbuilt Macro that allows you to write VBScript, but I find it easier to write a VBScript that runs in Windows Scripting Host environment. The VBScript following (e.g. named oneliner.vbs) reads the CSV Files (as they are plain text), split them by lines (so read string row by row), and split each row by delimiter comma. Print the value to console which you can redirect to the file. I was given a few Excel CSV files that contain quite a lot of values, like this: The task is to copy all the valid numbers and store them in a new Excel CSV file row by row - so basically one column of values. VBScript to Read CSV Files The Excel has inbuilt Macro
- [How to Set Up and Test a WebSocket Server in Python with Existing CLI Tools?](https://helloacm.com/how-to-set-up-and-test-a-websocket-server-in-python-with-existing-cli-tools/) - Introduction to WebSockets WebSockets enable real-time, full-duplex communication between clients and servers over a single TCP connection. In this post, we'll show you how to set up a simple WebSocket server in Python and how to test it using both a Python client and popular command-line utilities like websocat and wscat. Setting Up a WebSocket How to Set Up and Test a WebSocket Server in Python with Existing CLI Tools?
- [The latest Raspberry Pi 5 comes with up to 16GB of RAM, but it’s a bit pricey.](https://helloacm.com/the-latest-raspberry-pi-5-comes-with-up-to-16gb-of-ram-but-its-a-bit-pricey/) - Raspberry Pi: One of the Most Iconic Tech Symbols in the UK From Cambridge to Home Servers: The Charm and Future of Raspberry Pi Visiting the Raspberry Pi Physical Store and Prospects of a DAO Project A British Pride: Raspberry Pi and Its Innovative Uses In the UK, besides Rolls-Royce engines, London’s financial institutions, Oxford The latest Raspberry Pi 5 comes with up to 16GB of RAM, but it’s a bit pricey.
- [Telegram Accounts Are Shockingly Easy to Hack Without 2FA](https://helloacm.com/telegram-accounts-are-shockingly-easy-to-hack-without-2fa/) - "How My Telegram Account Got Hacked—and What I Learned" "A Cautionary Tale: Telegram Security and 2FA" "Why You Must Enable 2FA on Telegram Immediately" "Telegram Accounts Are Shockingly Easy to Hack Without 2FA" "Don’t Make My Mistake: Telegram Without 2FA Is a Time Bomb" "99% of Hacked Telegram Accounts Have This in Common" "Telegram Security: Telegram Accounts Are Shockingly Easy to Hack Without 2FA
- [Why NordVPN Is the Best Choice for Online Privacy and Security in 2025](https://helloacm.com/why-nordvpn-is-the-best-choice-for-online-privacy-and-security-in-2025/) - In today’s digital world, where our personal data is constantly at risk and internet restrictions are tightening across the globe, a reliable VPN has become an essential tool. One of the most trusted names in the VPN industry is NordVPN?—a powerful and feature-rich service designed to protect your privacy, secure your connection, and unlock the Why NordVPN Is the Best Choice for Online Privacy and Security in 2025
- [Python match vs Traditional if-elif: A Modern Take on Switch Statements](https://helloacm.com/python-match-vs-traditional-if-elif-a-modern-take-on-switch-statements/) - In Python, the match keyword is used for pattern matching, introduced in Python 3.10 as part of structural pattern matching, similar to switch statements in other languages, but far more powerful. Introduction What is the match Keyword? Starting from Python 3.10, the match statement introduces structural pattern matching. It acts like a powerful switch statement In Python, the match keyword is used for pattern matching, introduced in Python 3.10 as part of structural pattern matching, similar to switch statements in other languages, but far more powerful.
- [Auditing blockchain wallet code with Copilot AI](https://helloacm.com/auditing-blockchain-wallet-code-with-copilot-ai/) - Auditing blockchain wallet code with Copilot AI I found that AI can be very useful for auditing code security. For example, I had been using a wallet extension that supports STEEM and Blurt, but it suddenly stopped working. Normally, I clone the source code from GitHub and load the extension locally using the “Load Unpacked Extension” option in Chrome. This method is
- [Understanding the LEA Instruction: A Powerful Tool for Address Calculation in x86 Assembly](https://helloacm.com/understanding-the-lea-instruction-a-powerful-tool-for-address-calculation-in-x86-assembly/) - What Is the LEA Instruction? In x86 assembly, the LEA (Load Effective Address) instruction is used to **compute the address** of a memory operand and store it in a register — **without accessing memory**. It is commonly used for pointer arithmetic and offset calculations. Basic Syntax LEA destination, source destination: Must be a register (e.g., Understanding the LEA Instruction: A Powerful Tool for Address Calculation in x86 Assembly
- [C++ Forward References: The Key to Perfect Forwarding](https://helloacm.com/c-forward-references-the-key-to-perfect-forwarding/) - In modern C++ (C++11 and beyond), a powerful feature called forward references enables developers to write flexible, efficient, and generic functions that handle both lvalues and rvalues — with just a single template declaration. Despite their confusing syntax, forward references are essentially a neat syntactic mechanism that makes your code both concise and high-performance. What C++ Forward References: The Key to Perfect Forwarding
- [PHP7.x is deprecated by Wordpress: Why You Should Upgrade to PHP8.x?](https://helloacm.com/php7-x-is-deprecated-by-wordpress-why-you-should-upgrade-to-php8-x/) - Time to Say Goodbye to PHP 7.4 — My Blogs Are Finally Getting an Upgrade After Years on PHP 7.4, It's Finally Time to Upgrade to 8.x PHP 7.4 No Longer Supported — Blog Upgrades on the Agenda The “If It Works, Don’t Touch It” Days Are Over — Time to Upgrade PHP WordPress Warning: PHP7.x is deprecated by Wordpress: Why You Should Upgrade to PHP8.x? Time to Say Goodbye to PHP 7.4 — My Blogs Are Finally Getting an Upgrade After Years on PHP 7.4, It's Finally Time to Upgrade to 8.x PHP 7.4 No Longer Supported — Blog Upgrades on the Agenda The “If It Works, Don’t Touch It” Days Are Over — Time to Upgrade PHP WordPress Warning: PHP 7.4 Is Outdated, Time for Me to Act
- [How to Clean Up NVM Node Versions Except One?](https://helloacm.com/how-to-clean-up-nvm-node-versions-except-one/) - How to Remove All NVM Node.js Versions Except One NVM is Node Version Manager, which can be installed via github. With NVM, one can easily manage and installs multiple versions of Node/NPM on the same server. Use Case You’re using nvm (Node Version Manager) to manage multiple Node.js versions You want to clean up your
- [Last Month's Scam Experience on Telegram (NordVPN Impersonation)](https://helloacm.com/last-months-scam-experience-on-telegram-nordvpn-impersonation/) - Last month, someone claiming to be a NordVPN employee (Salbatore Isom) contacted me on Telegram. He said he was part of NordVPN’s Influence Program and wanted to collaborate with me. At first, I ignored him. Later, I casually replied. He explained that I only needed to pin a post on X (formerly Twitter) for a Last Month's Scam Experience on Telegram (NordVPN Impersonation)
- [Bitcoin has reached All-Time-High 118K](https://helloacm.com/bitcoin-has-reached-all-time-high-118k/) - Bitcoin has reached an all-time high of $118,000, and the core driver behind this surge is the synchronized recovery of institutional buying and overall market risk appetite. After months of caution, institutions are once again increasing their exposure to digital assets, signaling renewed confidence in crypto as an investable asset class. This rebound in institutional Bitcoin has reached All-Time-High 118K Bitcoin, BTC, All-Time High, Institutional Investment, Federal Reserve, Monetary Policy, Crypto Market, Liquidity, GENIUS Act, Stablecoin Regulation, Cryptocurrency, Market Sentiment, Risk Appetite, Regulatory Clarity, Crypto Rally
- [Turning a Dusty Raspberry Pi into a Home Server for Blockchain Monitoring](https://helloacm.com/turning-a-dusty-raspberry-pi-into-a-home-server-for-blockchain-monitoring/) - TLDR; I've now 27 servers, and some are low-cost or even free. For example, oracle gives you 2 free VMs, and I run a raspberry pi 4b home. I run microservices on small VMs. I put raspberry pi in a shoe closet, connect it to router. and I overclocked the CPUs from 1.4 GHz to Turning a Dusty Raspberry Pi into a Home Server for Blockchain Monitoring
- [Teaching Kids Programming - Number of Equivalent Domino Pairs (Hash Table + Combination)](https://helloacm.com/teaching-kids-programming-number-of-equivalent-domino-pairs-hash-table-combination/) - Given a list of dominoes, dominoes[i] = [a, b] is equivalent to dominoes[j] = [c, d] if and only if either (a == c and b == d), or (a == d and b == c) - that is, one domino can be rotated to be equal to another domino. Return the number of pairs Teaching Kids Programming - Number of Equivalent Domino Pairs (Hash Table + Combination) Counting Equivalent Domino Pairs: Brute Force and Optimized Python Solutions
- [Review: Keychron K8 Wireless Mechanical Keyboard for Software Engineers](https://helloacm.com/review-keychron-k8-wireless-mechanical-keyboard-for-software-engineers/) - Use: ZHIHUA for additional 5% discount when you purchase a Keychron keyboard here. I have been in love with the keychron keyboards for years. And recently I have purchased another Keychron keyboard: Keychron K8 Wireless Mechanical Keyboard (US ANSI Layout) × 1 I also have a C2 Keychron Full Keyboard - which happens to have Review: Keychron K8 Wireless Mechanical Keyboard for Software Engineers
- [Understanding dynamic_cast in C++: Safe Downcasting Explained](https://helloacm.com/understanding-dynamic_cast-in-c-safe-downcasting-explained/) - What Is dynamic_cast in C++? Purpose Safely convert between polymorphic types at runtime Commonly used to downcast from a base class to a derived class Performs a runtime type check using RTTI (Run-Time Type Information) Basic Syntax Derived* d = dynamic_cast(basePtr); If basePtr points to an actual Derived object, the cast succeeds If not, the Understanding dynamic_cast in C++: Safe Downcasting Explained
- [Monitoring 28 VPS Machines (Including a Raspberry Pi) with Nezha Dashboard](https://helloacm.com/monitoring-28-vps-machines-including-a-raspberry-pi-with-nezha-dashboard/) - Side Projects and My Fleet of 28 Servers Over the years, I have worked on various small projects—blogs, online tools, and being a STEEM witness. Currently, I manage 28 servers. Most are budget VPS instances, and the newest is a Raspberry Pi 4B installed in my home shoe cabinet. Tracking Server Info in Excel Each Monitoring 28 VPS Machines (Including a Raspberry Pi) with Nezha Dashboard
- [Alarming on High Disk Usage using BASH + AWK + Crontab Job](https://helloacm.com/alarming-on-high-disk-usage-using-bash-awk-crontab-job/) - disk full alarm in BASH+AWK Disk high usage are one of the common cause of server down. Some administrators would create a 8GB empty file, and once the disk usage is exceeding a threshold, they would just delete the empty 8GB file to regain the disk space and gives enough time for proper fixing/investigation. In many cases, the "No enough
- [P versus NP problem (NP Complete, NP Hard)](https://helloacm.com/p-versus-np-problem-np-complete-np-hard/) - P, NP, NP-hard, and NP-complete are key concepts in computational complexity theory, which helps us classify problems based on how hard they are to solve. Here's a breakdown: P (Polynomial Time) P represents the class of problems that can be solved efficiently by a deterministic algorithm, meaning they can be solved in polynomial time relative P versus NP problem (NP Complete, NP Hard)
- [The Halting Problem and Its Paradoxical Cousins: When Logic Looks at Itself](https://helloacm.com/the-halting-problem-and-its-paradoxical-cousins-when-logic-looks-at-itself/) - The Halting Problem: Can a Program Predict Itself? Problem: Given a program P and input x, can you determine whether P(x) halts or loops forever? Introduced by Alan Turing in 1936 Proved to be undecidable — no algorithm can solve it for all inputs Involves self-reference: Can a program analyze another program, including itself? Turing's The Halting Problem and Its Paradoxical Cousins: When Logic Looks at Itself Proof by Contradiction
- [Compute GCD in Bash with Input Validation](https://helloacm.com/compute-gcd-in-bash-with-input-validation/) - GCD Computation in Bash What is GCD? GCD stands for Greatest Common Divisor. It is the largest positive integer that divides two numbers without leaving a remainder. For example: GCD of 8 and 12 is 4 GCD of 14 and 49 is 7 GCD is useful in simplifying fractions, cryptographic algorithms, and number theory. Algorithms Compute GCD in Bash with Input Validation
- [What is Moravec's Paradox?](https://helloacm.com/what-is-moravecs-paradox/) - What is Moravec's Paradox? Moravec's Paradox is a significant observation in the fields of artificial intelligence and robotics. One-sentence summary "Tasks that are easy for humans are often extremely difficult for machines; tasks that are hard for humans are often easy for machines." Origin of the Paradox Proposed in the 1980s by Hans Moravec, Rodney What is Moravec's Paradox?
- [Why a Leading Space in Linux Shell Commands Can Matter?](https://helloacm.com/why-a-leading-space-in-linux-shell-commands-can-matter/) - Understanding the Leading Space Behavior in Linux Shells Overview In Linux shell environments like bash, prefixing a command with a space can influence whether or not that command is saved to your command history. This subtle trick is useful when working with sensitive data or when you simply don't want a command logged. The Key linux, bash, shell, history, terminal, security, command-line
- [ROS Topics, Services, and Actions Explained with Clear Examples](https://helloacm.com/ros-topics-services-and-actions-explained-with-clear-examples/) - It is said that the next ten years will be the era of Robotics with AI (Artificial Intelligence). "ROS - Robot Operating System The Robot Operating System (ROS) is a set of software libraries and tools that help you build robot applications. From drivers to state-of-the-art algorithms, and with powerful developer tools, ROS has what ROS Topics, Services, and Actions Explained with Clear Examples
- [Teaching Kids Programming - Another BFS to Generate Binary Strings Without Adjacent Zeros](https://helloacm.com/teaching-kids-programming-another-bfs-to-generate-binary-strings-without-adjacent-zeros/) - You are given a positive integer n. A binary string x is valid if all substrings of x of length 2 contain at least one "1". Return all valid strings with length n, in any order. Example 1: Input: n = 3 Output: ["010","011","101","110","111"] Explanation: The valid strings of length 3 are: "010", "011", "101", Teaching Kids Programming - Another BFS to Generate Binary Strings Without Adjacent Zeros
- [Teaching Kids Programming - Fibonacci Numbers in (Generate Binary Strings Without Adjacent Zeros)](https://helloacm.com/teaching-kids-programming-fibonacci-numbers-in-generate-binary-strings-without-adjacent-zeros/) - You are given a positive integer n. A binary string x is valid if all substrings of x of length 2 contain at least one "1". Return all valid strings with length n, in any order. Example 1: Input: n = 3 Output: ["010","011","101","110","111"] Explanation: The valid strings of length 3 are: "010", "011", "101", Teaching Kids Programming - Fibonacci Numbers in (Generate Binary Strings Without Adjacent Zeros)
- [C vs C++: Understanding the restrict Keyword and Its Role in Compiler Optimization](https://helloacm.com/c-vs-c-understanding-the-restrict-keyword-and-its-role-in-optimization/) - What is restrict in C? The restrict keyword was introduced in C99 as a type qualifier for pointers. It tells the compiler that the pointer is the only means by which the memory it points to will be accessed for the duration of its lifetime. This allows the compiler to safely optimize code by assuming C vs C++: Understanding the restrict Keyword and Its Role in Compiler Optimization
- [C++: lvalue, rvalue and rvalue references](https://helloacm.com/c-lvalue-rvalue-and-rvalue-references/) - C++ lvalue, rvalue, and rvalue references Understanding lvalues, rvalues, and rvalue references is essential for mastering modern C++ features like move semantics and perfect forwarding. 📌 What is an lvalue? An lvalue refers to a location in memory — it has a name and can appear on the left-hand side of an assignment. int x C++: lvalue, rvalue and rvalue references
- [C++ assert vs static_assert](https://helloacm.com/c-assert-vs-static_assert/) - C++ assert vs static_assert C++ provides two mechanisms to enforce assumptions: assert and static_assert. Though they seem similar, they operate at very different stages and serve distinct purposes. 🔍 assert — Runtime Check assert verifies conditions at runtime. If the condition is false, it prints an error and aborts execution. #include int divide(int x, C++ assert vs static_assert
- [Jane Street First Round Interview Experience (Software Engineer at London)](https://helloacm.com/jane-street-first-round-interview-experience-software-engineer-at-london/) - At the beginning of 2025, I got a one-hour coding interview experience with Jane Street. Market Position: Jane Street is a globally leading quantitative trading firm and liquidity provider, founded in 2000, with headquarters in New York and offices in London, Hong Kong, and Amsterdam. It is known for its heavy reliance on mathematics, statistics, Jane Street First Round Interview Experience (Software Engineer at London)
- [Building a Reliable Witness Vote Checker for the Steem Blockchain (with Retry & Exponential Backoff)](https://helloacm.com/building-a-reliable-witness-vote-checker-for-the-steem-blockchain-with-retry-exponential-backoff/) - When working with decentralized platforms like Steem, it's important to expect occasional hiccups — network issues, API rate limits, or temporary downtimes. That’s why any integration, bot, or tool you build should be able to fail gracefully and recover smartly. In this post, I’ll walk you through a simple yet robust vote-checking utility for the Building a Reliable Witness Vote Checker for the Steem Blockchain (with Retry & Exponential Backoff)
- [Why auto_ptr is deprecated in C++?](https://helloacm.com/why-auto_ptr-is-deprecated-in-c/) - Why auto_ptr is deprecated in C++ TLDR; the auto_ptr smart pointer keyword has been deprecated in C++ 11 and removed in C++ 17. Deprecation and Removal std::auto_ptr was deprecated in C++ 11. It was completely removed in C++ 17. Why Was auto_ptr Deprecated? It had unsafe copy semantics. Copying an auto_ptr transferred ownership and left Why auto_ptr is deprecated in C++?
- [C++ what is the consteval? How is it different to const and constexpr?](https://helloacm.com/c-what-is-the-consteval-how-is-it-different-to-const-and-constexpr/) - C++: What is consteval? How is it Different from const and constexpr? If you’ve been using const and constexpr in your C++ code, you might be wondering what the new consteval keyword in C++20 brings to the table. Let’s break it down clearly. What is consteval? The consteval specifier declares a function as an immediate C++ what is the consteval? How is it different to const and constexpr?
- [CrystalDiskInfo Software Shows Percentage of Usage (Lifespan) of SSD](https://helloacm.com/crystaldiskinfo-software-shows-percentage-of-usage-lifespan-of-ssd/) - CrystalDiskInfo is a well-known (Japanese) software that shows information/stats and monitor the health of your Hard drives. So you know when to replace the Hard Drives if it shows some abnormal stats by CrystalDiskInfo software. CrystalDiskInfo is a free, open-source software utility developed by Crystal Dew World for Microsoft Windows that allows users to view CrystalDiskInfo Software Shows Percentage of Usage (Lifespan) of SSD
- [Tutorial on C++ std::move (Transfer Ownership)](https://helloacm.com/tutorial-on-c-stdmove-transfer-ownership/) - 📘 C++ Move Semantics & std::move() Tutorial C++ std::move() is used to transfer the ownership of a variable/object. 🔹 What is Move Semantics? In C++, move semantics optimize performance by transferring ownership of resources (like memory or file handles) instead of copying them. Move semantics were introduced in C++11, and they allow: Faster transfers of Tutorial on C++ std::move (Transfer Ownership)
- [const vs constexpr in C++](https://helloacm.com/const-vs-constexpr-in-c/) - C++ const vs constexpr: What’s the Real Difference? Both are used in C++ to define constants. Why This Matters Modern C++ encourages writing immutable, efficient, and expressive code. Two keywords—const and constexpr—sit at the heart of that effort. They look similar, but understanding their distinct guarantees is crucial for clean compile‑time and run‑time behavior. High‑Level const vs constexpr in C++
- [The Next Permutation Algorithm in C++ (std::next_permutation)](https://helloacm.com/the-next-permutation-algorithm-in-c-stdnext_permutation/) - The Next Permutation Algorithm in C++ (std::next_permutation) The C++ std::permutation() takes two parameters, the start iterator and the finishing iterator (one element beyond), then returns its next permutation. Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers. If such arrangement is not possible, it must rearrange it as the lowest possible order (ie, sorted in ascending order). The replacement must be in-place and use only constant extra memory. Here are some examples. Inputs are in the left-hand column
- [C++ Coding Reference: sort() and stable_sort()](https://helloacm.com/c-coding-reference-sort-and-stable_sort/) - C++ Coding Reference: sort() and stable_sort() The simple sorting may be quicker for arrays with fewer elements, thus the sorting function provided in the library may consist of hybrid sorting algorithms, usually divide-and-conquer using quicksort or mergesort, then when the number of elements in the groups are smaller e.g. 20 to 30 numbers, switch to selection sorting or insertion sort. Nowadays, you don't have to implement your sorting algorithms e.g. quicksort, selection sort, insertion sort etc by yourself. Most programming languages provide the functions/library to do the sorting efficiently, mostly in O(nlogN) time. The simple sorting may be quicker for arrays with fewer elements, thus the sorting function provided in the library may consist of
- [C++ Coding Reference: std::accumulate() and examples](https://helloacm.com/c-code-reference-stdaccumulate-and-examples/) - The Reduce in terms of Map-Reduce is often referring to reducing many values (vector) to a single value (scalar). In C++, the STL has a accumulate() method that allows you to reduce a vector/list to a single value by providing the initial value, and the reducer function. The Reduce in terms of Map-Reduce is often referring to reducing many values (vector) to a single value (scalar). In C++, the STL has a accumulate() method that allows you to reduce a vector/list to a single value by providing the initial value, and the reducer function. The std::accumulate() is provided in C++ header numeric
- [C++ Coding Reference: count and count_if](https://helloacm.com/c-coding-reference-count-and-count_if/) - C++ Coding Reference: count and count_if Novice C++ programmers usually write a simple for loop if they want to count number of particular elements in the array - which could be entirely replaced by STL::count or STL::count_if. Novice C++ programmers usually write a simple for loop if they want to count number of particular elements in the array - which could be entirely replaced by STL::count or STL::count_if. std::count() For example, given the following vector/array. vector nums({ 1, 2, 3, 4, 5, 3}); If we want to count the number of 3's,
- [C++ Coding Reference: next_permutation() and prev_permutation()](https://helloacm.com/c-coding-reference-next_permutation-and-prev_permutation/) - C++ Coding Reference: next_permutation() and prev_permutation() C++ algorithm header provides you access to next_permutation() and prev_permutation() which can be used to obtain the next or previous lexicographically order. With an array or vector or string (or other STL containers) of size N, there are total N! (factorial) permutations. The (next or previous) permutation algorithms are mostly in-place which mean that it
- [C++ Coding Reference: iota() - Setting Incrementing Values to Arrays or Vectors](https://helloacm.com/c-coding-reference-iota-setting-incrementing-values-to-arrays-or-vectors/) - C++ Coding Reference: iota() - Setting Incrementing Values to Arrays or Vectors compute increasing sequence The C++ method iota (not to be confused with itoa which is to convert integers to string), is defined in header numeric. Its purpose is to compute increasing values into a range of values such as vector or arrays. Syntactically, it has the following function signature with generic template in numeric: // FUNCTION TEMPLATE iota
- [C++ Coding Reference: is_sorted_until() and is_sorted()](https://helloacm.com/c-coding-reference-is_sorted_until-and-is_sorted/) - C++ Coding Reference: is_sorted_until() and is_sorted() The std::is_sorted_until() has the same function signature as std::is_sorted(). It will return the first iterator that is out-of-order or the end() if the original container is in-order. Therefore, the is_sorted() can be simply calling is_sorted_until() to check if the return iterator is end() - beyond the last element of the array/vector. We talked about sorting (unstable and stable) algorithms implemented in C++ STL. The STL algorithm header also provides the is_sorted_until() and is_sorted() which returns the first out-of-order element in iterator, and whether the container e.g. vector is sorted or not. C++ is_sorted(): Test whether the container is sorted (in-order) One easy implementation of the is_sorted()
- [Comparisions of push_back and emplace_back in C++ std::vector](https://helloacm.com/comparisions-of-push_back-and-emplace_back-in-c-stdvector/) - In C++, both push_back and emplace_back are methods of the std::vector class used to add elements to the end of the vector, but they have some differences in how they handle the elements. push_back Usage: push_back(const T& value) or push_back(T&& value) Behavior: This method copies (or moves) the value into the vector. Overhead: Involves an Comparisions of push_back and emplace_back in C++ std::vector
- [Modern C++ Language Features](https://helloacm.com/modern-c-language-features/) - When you are writing C++ code, especially on your interviews, you want to impress the interviewer with the modern C++ features. Modern C++ introduces several powerful features, including algorithms like std::transform and std::for_each, which leverage functional programming paradigms for concise and expressive code. For example: the advantages of std::for_each and std::transform: Declarative: These functions describe Modern C++ Language Features
- [The String/Memory Comparision Function memcmp in C/C++](https://helloacm.com/the-string-memory-comparision-function-memcmp-in-c-c/) - memcmp is a standard library function in C and C++ that compares two blocks of memory byte by byte. It's declared in the header in C++ and the header in C. Syntax of memcmp int memcmp(const void *ptr1, const void *ptr2, size_t num); Parameters of memcmp ptr1: Pointer to the first block of memory. The String/Memory Comparision Function memcmp in C/C++
- [The Memory Manager in C/C++ (Heap vs Stack)](https://helloacm.com/the-memory-manager-in-c-c-heap-vs-stack/) - This is one of the most frequently asked interview questions for Software Engineer roles. In C/C++, memory management is a critical aspect of controlling how a program allocates and manages its resources. The memory in a C/C++ program is typically divided into different areas: stack and heap being the most prominent for dynamic and automatic The Memory Manager in C/C++ (Heap vs Stack)
- [Tutorial on C++ Future, Async and Promise](https://helloacm.com/tutorial-on-c-future-async-and-promise/) - In C++, std::future and std::async are part of the C++11 standard's concurrency library. They allow you to run tasks asynchronously and obtain results later, making them useful for writing non-blocking code and parallelizing computations. Here’s a breakdown of how they work and how they’re typically used: C++ std::async std::async is a high-level function that allows Tutorial on C++ Future, Async and Promise
- [Tutorial on C++ Ranges](https://helloacm.com/tutorial-on-c-ranges/) - C++20 introduced ranges, a powerful and elegant abstraction for working with sequences (like arrays, vectors, etc.). Ranges improve readability, composability, and performance compared to raw iterators or old-style loops. What Are Ranges? A range in C++20 is an abstraction that represents a sequence of elements that can be iterated over. It pairs well with views Tutorial on C++ Ranges
- [Tutorial on C++ Smart Pointers](https://helloacm.com/tutorial-on-c-smart-pointers/) - Tutorial on Smart Pointers in C++ Smart pointers in C++ provide automatic and safe memory management. They help avoid memory leaks and dangling pointers by ensuring proper object destruction through RAII (Resource Acquisition Is Initialization). This tutorial covers the three primary smart pointers in C++: std::unique_ptr std::shared_ptr std::weak_ptr 1. std::unique_ptr unique_ptr has exclusive ownership. Only Tutorial on C++ Smart Pointers
- [Teaching Kids Programming - Compute the Range Sum with Update: A Deep Dive into Segment Tree, SQRT Decomposition, Brute Force & Prefix Sum](https://helloacm.com/teaching-kids-programming-compute-the-range-sum-with-update-a-deep-dive-into-segment-tree-sqrt-decomposition-brute-force-prefix-sum/) - When working with arrays, one common task is to compute the sum of elements within a range, along with supporting dynamic updates to the array values. While a brute-force solution may work for small datasets, as the array grows, efficient techniques become crucial. In this post, we’ll walk through four different approaches to solve the
- [BASH: How to Get HTTP Response Code using Curl Command?](https://helloacm.com/bash-how-to-get-http-response-code-using-curl-command/) - To check the HTTP response code after running a curl command, you can use the -w option with curl, which allows you to specify a custom output format. Here's the command: curl -o /dev/null -s -w "%{http_code}\n" You can save the HTTP response code into a BASH variable, like this: resp=$(curl -o /dev/null -s How to Get HTTP Response Code using Curl Command?
- [Javascript (NodeJS) Function to Check if a Witness Has been Voted by or Proxied By on Steem Blockchain](https://helloacm.com/javascript-nodejs-function-to-check-if-a-witness-has-been-voted-by-or-proxied-by-on-steem-blockchain/) - Javascript (NodeJS) Function to Check if a Witness Has been Voted by or Proxied By on Steem Blockchain On Steem Blockchain, we can either proxy a witness vote or cast a witness vote (out of 30 votes) to a steem witness. We can use the steemjs library to get account information which includes the current proxy and the list of witness votes (up to 30): function is_voted_by(witness, id) { return new Promise((resolve, reject)
- [Why does the exchange force liquidation when the margin is low?](https://helloacm.com/why-does-the-exchange-force-liquidation-when-the-margin-is-low/) - In the cryptocurrency market, as long as you don't trade contracts, the risk is not very high. I have never traded contracts because I think trading contracts is essentially gambling. I'm not sure whether there are leveraged futures products in the stock market, but in the cryptocurrency market, due to less regulation, you can apply Why does the exchange force liquidation when the margin is low?
- [How to Repeat Until Errors using GDB or LLDB Debugger?](https://helloacm.com/how-to-repeat-until-errors-using-gdb-or-lldb-debugger/) - How to Repeat Until Errors using GDB or LLDB Debugger When debugging programs, it’s common to want to repeatedly run a program until it encounters an error. Both GDB (GNU Debugger) and LLDB (LLVM Debugger) offer ways to automate this process. Let’s dive into how to set this up in each debugger. This is particular How to Repeat Until Errors using GDB or LLDB Debugger?
- [Leetcode's Coding Room - Real time Coding Collaboration (Coding Interview)](https://helloacm.com/leetcodes-coding-room-real-time-coding-collaboration-coding-interview/) - The Leetcode Coding Room's realtime multi-coder collaboration feature is a powerful tool designed to enhance teamwork and collaboration among developers working on coding challenges. It allows multiple users to work on the same problem simultaneously, providing a shared coding environment. This tool can be used to conduct a coding interview. My son likes to invite Leetcode's Coding Room - Real time Coding Collaboration (Coding Interview)
- [When Your PC Slows Down, It Might Be Time for an Update](https://helloacm.com/when-your-pc-slows-down-it-might-be-time-for-an-update/) - I use a Microsoft Surface Studio as my daily workstation and rarely shut it down or restart it unless Windows forces an update. Recently, the entire OS became sluggish, with Chrome freezing the system when loading pages with large tables. At first, I tried closing unnecessary applications and clearing some memory, but the issue persisted. When Your PC Slows Down, It Might Be Time for an Update
- [Using Docker to Run Firefox as a Proxy: A Simple Solution for Accessing Blocked Websites in China](https://helloacm.com/using-docker-to-run-firefox-as-a-proxy-a-simple-solution-for-accessing-blocked-websites-in-china/) - When I was travelling to China, the most annoying thing is accessing foreign websites: Gmail, YouTube videos, etc. In mainland China, "using a VPN" is illegal, but it seems that in major cities like Shanghai and Beijing, permits need to be obtained for using VPN legally. For example, some international companies and government institutions can Using Docker to Run Firefox as a Proxy: A Simple Solution for Accessing Blocked Websites in China
- [Leetcode DCC Winner T-shirt](https://helloacm.com/leetcode-dcc-winner-t-shirt/) - I solve problems on LeetCode every day. LeetCode has both a Chinese site and an international site, and I submit code to both sites. By checking in daily, I earn points, which can be redeemed for various rewards like T-shirts, hoodies, water bottles, and even a one-month membership fee. I started using LeetCode in August Leetcode DCC Winner T-shirt
- [ChatGPT Gives a Correct Leetcode Solution (Rust: Binary Search Algorithm) after Several Attempts](https://helloacm.com/chatgpt-gives-a-correct-leetcode-solution-rust-binary-search-algorithm-after-several-attempts/) - I was trying to test the ChatGPT's coding skills, thus I prompted it: "Solve the leetcode 704 using Rust". This is a Binary Search Problem, see the following problem statement from leetcode: Given an array of integers nums which is sorted in ascending order, and an integer target, write a function to search target in ChatGPT Gives a Correct Leetcode Solution (Rust: Binary Search Algorithm) after Several Attempts Artificial General Intelligence, AGI
- [Using the stdout to debug print the solution in the leetcode contest](https://helloacm.com/using-the-stdout-to-debug-print-the-solution-in-the-leetcode-contest/) - Using the stdout to debug print the solution in the leetcode contest The leetcode web coding IDE has a premium debugger feature - however this is not enabled during the contest. Recently I found out that you can actually print to STDOUT and then when you run your solution - you will see the output - this is an easy yet powerful method to debug when you
- [How to use the Leetcode's Mock Interview Overview to Nail Your Interview?](https://helloacm.com/how-to-use-the-leetcodes-mock-interview-overview-to-nail-your-interview/) - Also, you can see how your score rank along other programmers in the Big4. Another useful feature of leetcode is that you can sort problems by Tags, frequencies as they've been asked in last 6/12 months, and the companies that have asked. Leetcode has become a de-facto standard for preparing your coding interview. The leetcode has a very useful feature - which is mocking interview. You can mock coding interviews for many big giant techs (e.g. Big4: Facebook, Microsoft, Google and Amazon). And throughout the mocking coding exercises, your skills will be evaulated and analysis will be
- [Leetcode's Online Code Debugger and Intelligent Code Completion](https://helloacm.com/leetcodes-online-code-debugger/) - Leetcode's Online Code Debugger On ipad, there isn't any Good IDE that provides the debugger. And the leetcode code debugger just fills the gap. I can easily set a breakpoint, add variables to watch list, and see the local variables. Leetcode online judge has introduced a new feature lately - which is the online code debugger. This works perfect for me as I am using iPad + bluetooth keyboard to solve the puzzles and all I really need is an lightweight code debugger. Advantages of the Online Code Debugger Really, everything you need to solve
- [Leetcode Online Judge Does Not Support Boost Library for C++ Solutions](https://helloacm.com/leetcode-online-judge-does-not-support-boost-library-for-c-solutions/) - I am doing a C++ coding exercise, as usual.... And to split a string in C++, the best/easy way is to use the boost library... However, this is not supported on leetcode online judge... C++ without boost library, is a bit hard to learn and use. How to Split a String by Delimiter in C++ Leetcode Online Judge Does Not Support Boost Library for C++ Solutions
- [How to do Leetcoding on LG OLED Smart TV (65 inch)?](https://helloacm.com/how-to-do-leetcoding-on-lg-oled-smart-tv-65-inch/) - The kids enjoy their favorite content, like gaming videos, Pokémon, and Super Mario on the newly purchased LG OLED 65' Smart TV, which is mounted in the kitchen/dining room. One day, I accidentally noticed my wife using the TV's built-in browser. She was navigating websites using the remote controller (which shows a mouse pointer) and How to do Leetcoding on LG OLED Smart TV (65 inch)?
- [Teaching Kids Programming - Generate Binary Strings Without Adjacent Zeros (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-generate-binary-strings-without-adjacent-zeros-breadth-first-search-algorithm/) - You are given a positive integer n. A binary string x is valid if all substrings of x of length 2 contain at least one "1". Return all valid strings with length n, in any order. Example 1: Input: n = 3 Output: ["010","011","101","110","111"] Explanation: The valid strings of length 3 are: "010", "011", "101", Teaching Kids Programming - Generate Binary Strings Without Adjacent Zeros (Breadth First Search Algorithm)
- [Three Attempts at Google: My Software Engineer Interview Journey (Is There Only Three Chances in a Lifetime?)](https://helloacm.com/three-attempts-at-google-my-software-engineer-interview-journey-is-there-only-three-chances-in-a-lifetime/) - Google is one of the world's most famous tech giants. A few years ago, it was seen as a top destination with great benefits and relatively low pressure. In London, Google has a primary office focused on development and research. First Interview in 2016 My first Google interview was in 2016. It started with a Three Attempts at Google: My Software Engineer Interview Journey (Is There Only Three Chances in a Lifetime?)
- [Google Finals: Close to L5, Offered L4, and a Big Pie in the Sky](https://helloacm.com/google-finals-close-to-l5-offered-l4-and-a-big-pie-in-the-sky/) - Last September, I interviewed for the third time with Google in London: Google Interview Question – Print Message, aiming for an SRE position. I approached it with a "let's give it a shot" mindset. In the final two minutes of the first round, I answered a follow-up question about applying algorithms to distributed systems (how Google Finals: Close to L5, Offered L4, and a Big Pie in the Sky
- [Optimal SizeOf Code Generated in Delphi 2007](https://helloacm.com/optimal-sizeof-code-generated-in-delphi-2007/) - In Delphi, you can use SizeOf to get the size of a type or any variable. In Delphi, you can use SizeOf to get the size of a type or any variable. The SizeOf function returns the storage size, in bytes, of either a Variable or Type. The prototypes are listed below: function SizeOf ( Variable : Any type ) : Integer; function SizeOf ( Type ) : Integer; It is
- [Delphi Static Code Analyser - FixInsight](https://helloacm.com/delphi-static-code-analyser-fixinsight/) - Delphi Static Code Analyser - FixInsight FixInsight is a powerful static code analysis tool designed specifically for Delphi developers. It helps identify potential issues in the codebase before compilation, improving code quality, maintainability, and reliability. By detecting possible bugs, performance bottlenecks, and coding standard violations, FixInsight assists developers in writing cleaner and more efficient Delphi code. Key Features of FixInsight: Code
- [How to Check Debugger Present in Delphi?](https://helloacm.com/how-to-check-debugger-present-in-delphi/) - How to Check Debugger Present in Delphi? It is not easy to debug multithreading application because of threads jumping and interleaving each other. When I was debugging some algorithms, I always change the application setting to single threaded. It is not easy to debug multithreading application because of threads jumping and interleaving each other. When I was debugging some algorithms, I always change the application setting to single threaded. Things could be a lot easier. Delphi has a IsDebuggerPresent function that declares the Win32 API. unit Windows; .. .. function IsDebuggerPresent: boolean; external
- [How to Check Debugger Present in Delphi?](https://helloacm.com/how-to-check-debugger-present-in-delphi/) - How to Check Debugger Present in Delphi? It is not easy to debug multithreading application because of threads jumping and interleaving each other. When I was debugging some algorithms, I always change the application setting to single threaded. It is not easy to debug multithreading application because of threads jumping and interleaving each other. When I was debugging some algorithms, I always change the application setting to single threaded. Things could be a lot easier. Delphi has a IsDebuggerPresent function that declares the Win32 API. unit Windows; .. .. function IsDebuggerPresent: boolean; external
- [How to Check If Running in 64-bit Windows Environment using Delphi?](https://helloacm.com/how-to-check-if-running-in-64-bit-windows-environment-using-delphi/) - How to Check If Running in 64-bit Windows Environment using Delphi? The IsWow64Process API is defined in the windows DLL kernel32.dll, which can be loaded via LoadLibrary. However, you can load it once and cache the result for any successive calls. The Win32 API IsWow64Process determines if a running process (Process Handler) is on WOW64, which is only set to TRUE, if the process is 32-bit and the OS is 64-bit. On 64-bit Windows, 32-bit processes are running in the WOW64 (Windows 32-bit on Windows 64-bit) environment. Therefore, the IsWow64Process checks this situation. The IsWow64Process API
- [Integer Performance Comparisons of Delphi Win32, Win64 and Linux64 for Single/Multithreading Counting Prime Number](https://helloacm.com/integer-performance-comparisons-of-delphi-win32-win64-and-linux64-for-singlemultithreading-counting-prime-number/) - Integer Performance Comparisons of Delphi Win32, Win64 and Linux64 for Single/Multithreading Counting Prime Number Since Delphi 10.2 Tokyo supports the same codebase compiled into Win32, Win64 and Linux64 binaries, then it is interesting to run a small tests for a quick performance overview targeted different platforms. Delphi Code to Test the Prime We have seen the code to test if a given integer is a prime: // https://helloacm.com/integer-performance-comparisons-of-delphi-win32-win64-and-linux64-for-singlemultithreading-counting-prime-number/ function
- [Delphi Compiles Code to Linux 64-bit Server](https://helloacm.com/delphi-compiles-code-to-linux-64-bit-server/) - Delphi Compiles Code to Linux 64-bit Server If you are on the EMB subscription, you should recently get invitiation email to try the preview build - Delphi 10.2 Tokyo, which now supports 64-bit Linux server native code. If you are on the EMB subscription, you should recently get invitiation email to try the preview build - Delphi 10.2 Tokyo, which now supports 64-bit Linux server native code. It is still at beta-preview, so it is estimated to come out officially sometime this year e.g. April. Delphi now supports several major platforms, including
- [Delphi TParallel Cleanup Needed](https://helloacm.com/delphi-tparallel-cleanup-needed/) - Delphi TParallel Cleanup Needed Tasks / Threads created by TParallel are more or less persistent which might be good for reusability. However, I would like to see a class method for cleaning up.
- [Does Parallel.For in Delphi Actually Improve the Performance?](https://helloacm.com/does-parallel-for-in-delphi-actually-improve-the-performance/) - Does Parallel.For in Delphi Actually Improve the Performance? Parallel.For is a feature introduced in Delphi's Parallel Programming Library (PPL) that allows developers to execute loops concurrently across multiple CPU cores, significantly improving performance for computationally intensive tasks. Unlike a traditional for loop, which executes sequentially, Parallel.For divides the iteration workload among available threads in a thread pool, enabling parallel execution. Usage Example: uses
- [The Inline Keyword in Delphi](https://helloacm.com/inline-in-delphi/) - The delphi has a compiler directive {$INLINE} which takes three possible settings, The inline keyword in Delphi is a powerful optimization feature that instructs the compiler to replace a function or procedure call with its actual code, eliminating the overhead of function calls. This can significantly improve performance, especially for small, frequently called routines. Introduced in Delphi 2005, inline allows developers to write modular, readable code without
- [Lighting-fast Delphi 2007 Compiling Speed](https://helloacm.com/lighting-fast-delphi-2007-compiling-speed/) - Lighting-fast Delphi 2007 Compiling Speed Delphi 2007 Compilation Speed Reaches 160,000 Lines Per Second Delphi 2007 is renowned for its highly efficient compiler performance, achieving a compilation speed of up to 160,000 lines of code per second in real-world applications—far surpassing similar development tools. This exceptional performance enables developers to rapidly build and debug applications, significantly reducing compilation wait times
- [Reviews of FixInsight - Delphi Static Code Analyser](https://helloacm.com/reviews-of-fixinsight-delphi-static-code-analyser/) - Reviews of FixInsight - Delphi Static Code Analyser When the file is large, FixInsight may throw a out-of-memory exception, hence causing Fatal parser error. The FixInsight, as described in this article as well, is a delphi static code analyser that will find code violations in the project without compiling it. It enhances the delphi compiler for some violations that are not reported. For example, FixInsight does help me to find code typo/mistakes that compiler does not warn. FixInsight helps
- [Delphi is 30 Years Old!](https://helloacm.com/delphi-is-30-years-old/) - People who know the Delphi programming language are probably revealing their age. Many people think that Delphi is already obsolete, but in reality, it is not: IsDelphiDead.com The last time I used Delphi was in 2018 when I left a Cambridge startup software company. From 2009 to 2018, I wrote over 400,000 lines of Delphi Delphi is 30 Years Old!
- [Software Engineering Companies: Which Company Pays Most? and Which Company Is Hardest to Get In?](https://helloacm.com/software-engineering-companies-which-company-pays-most-and-which-company-is-hardest-to-get-in/) - Software Engineering Companies Acronyms These are acronyms used to refer to groups of major tech companies, usually based on their market influence and stock performance: FANG (Facebook, Amazon, Netflix, Google) This term was first coined by CNBC’s Jim Cramer in 2013 to highlight the four high-performing tech stocks at the time. FAANG (Facebook, Apple, Amazon, Software Engineering Companies: Which Company Pays Most? and Which Company Is Hardest to Get In?
- [Two Simple Commands to Deploy and Run the DeepSeek R1-8b Large Language Model (LLM)](https://helloacm.com/two-simple-commands-to-deploy-and-run-the-deepseek-r1-8b-large-language-model-llm/) - Large Language Models (LLMs) like DeepSeek R1-8B have revolutionized natural language processing, enabling powerful AI-driven applications. However, setting up these models can often be a daunting task, requiring complex configurations. Fortunately, with just two simple commands, you can deploy and run the DeepSeek R1-8B model effortlessly on your system using Ollama, a streamlined tool for Two Simple Commands to Deploy and Run the DeepSeek R1-8b Large Language Model (LLM)
- [ChatGPT writes a Python Script to Interact with Grok LLM from x.ai (Free $25 Credit)](https://helloacm.com/chatgpt-writes-a-python-script-to-interact-with-grok-llm-from-x-ai-free-25-credit/) - Free $25 Credit from X.AI Earlier this year, Elon Musk's X.AI company open-sourced the Grok large language model and provided $25 in free credit to use it. You can register for an account on the official website x.ai and apply for an API key. The examples to invoke the Grok are given as tutorials. curl ChatGPT writes a Python Script to Interact with Grok LLM from x.ai (Free $25 Credit)
- [VPS vs Dedicated Servers vs Cloud-Managed Dedicated Servers: Key Differences and Recommendations](https://helloacm.com/vps-vs-dedicated-servers-vs-cloud-managed-dedicated-servers-key-differences-and-recommendations/) - Understanding VPS, Dedicated Servers, and Cloud-Managed Dedicated Servers Choosing the right hosting solution can be daunting, especially with the variety of options available today. Among these, Virtual Private Servers (VPS), Dedicated Servers, and cloud-managed dedicated solutions offer unique benefits. In this article, we'll dive into their differences and provide recommendations to help you make an VPS vs Dedicated Servers vs Cloud-Managed Dedicated Servers: Key Differences and Recommendations
- [Shared Hosting vs VPS Hosting: Key Differences and Comparisons](https://helloacm.com/shared-hosting-vs-vps-hosting-key-differences-and-comparisons/) - Shared Hosting vs VPS Hosting: Key Differences When I started my internet journey, I put my personal website on a shared hosting with limited resources and then later I learned to manage the server (Linux) and migrated my website to a VPS server. And I started to develop web applications and APIs and even have Shared Hosting vs VPS Hosting: Key Differences and Comparisons
- [Teaching Kids Programming - Find the Integer Square Root (Brute Force Algorithm)](https://helloacm.com/teaching-kids-programming-find-the-integer-square-root-brute-force-algorithm/) - Given a non-negative integer x, return the square root of x rounded down to the nearest integer. The returned integer should be non-negative as well. You must not use any built-in exponent function or operator. For example, do not use pow(x, 0.5) in c++ or x ** 0.5 in python. Example 1: Input: x = Teaching Kids Programming - Find the Integer Square Root (Brute Force Algorithm)
- [How to Setup and Create GitHub Pages (Serverless Static Apps)](https://helloacm.com/how-to-setup-and-create-github-pages-serverless-static-apps/) - Creating a GitHub Pages site is a simple process that allows you to host a personal, project, or organisation site for free. Follow this guide to get started. Step 1: Create a GitHub Repository Log in to your GitHub account. Click on "New" to create a repository. For a personal site, name it .github.io. For How to Setup and Create GitHub Pages (Serverless Static Apps)
- [Crypto News: Dogecoin's Rise to Prominence in 2025 (FEMO?)](https://helloacm.com/crypto-news-dogecoins-rise-to-prominence-in-2025-femo/) - Introduction to Dogecoin Dogecoin is a decentralized digital currency based on blockchain technology, created by Billy Markus and Jackson Palmer in 2013. It was initially made to satirize Bitcoin and other cryptocurrencies, inspired by the popular "Doge" meme (Shiba Inu dog with humorous text). Although it started as a joke, Dogecoin has become a practical Crypto News: Dogecoin's Rise to Prominence in 2025
- [A blatantly fake phishing email from OpenSea (NFT)](https://helloacm.com/a-blatantly-fake-phishing-email-from-opensea-nft/) - I occasionally receive some phishing emails, most of which Gmail automatically classifies as spam. However, I often check the spam folder to make sure I haven’t missed any legitimate emails. Nowadays, Google’s algorithms are highly advanced, and their AI model (based on the Naive Bayes classification algorithm) boasts an accuracy rate of over 99%. Emails A blatantly fake phishing email from OpenSea (NFT)
- [Sui Blockchain Programming: Get the Gas Fee via NodeJs/Javascript Function](https://helloacm.com/sui-blockchain-programming-get-the-gas-fee-via-nodejs-javascript-function/) - In the world of blockchain development, understanding and managing gas fees is crucial for optimizing transactions. Sui, being a relatively new but powerful blockchain platform, has its own way of handling gas prices. Let's dive into how you can fetch the gas price for Sui using Node.js and JavaScript. Understanding Gas in Sui Gas in Sui Blockchain Programming: Get the Gas Fee via NodeJs/Javascript Function
- [The Man Who Bought Pizza with 10,000 Bitcoins: The Legendary Story of Laszlo Hanyecz](https://helloacm.com/the-man-who-bought-pizza-with-10000-bitcoins-the-legendary-story-of-laszlo-hanyecz/) - In 2009, Bitcoin made its debut as the first decentralised cryptocurrency, but it initially attracted little attention. However, 22 May 2010, an otherwise ordinary day, became a milestone in Bitcoin's history. On this day, programmer Laszlo Hanyecz used 10,000 Bitcoins to buy two pizzas, marking the first-ever real-world transaction with Bitcoin. This event, now known The Man Who Bought Pizza with 10,000 Bitcoins: The Legendary Story of Laszlo Hanyecz
- [NodeJs/Javascript Function to Get the Latest Block Number (Height) on the Sui Blockchain](https://helloacm.com/nodejs-javascript-function-to-get-the-latest-block-number-height-on-the-sui-blockchain/) - Getting the latest block number (height) on a blockchain is a common task for developers working with decentralized systems. If you are working with the Sui blockchain and want to retrieve the latest block height using Node.js and JavaScript, here\u2019s a straightforward way to achieve that. Sui is a high-performance, scalable blockchain that has been NodeJs/Javascript Function to Get the Latest Block Number (Height) on the Sui Blockchain
- [Bitcoin Key/Seed Phrase Storage Methods (2025 California Wildfire: 1.5 Million Bitcoins Lost)](https://helloacm.com/bitcoin-key-seed-phrase-storage-methods-2025-california-wildfire-1-5-million-bitcoins-lost/) - 2025 witnessed a sudden wildfire sweeping across California, consuming the state in flames. Even Bitcoin, hailed as "digital gold," was not spared. Reports suggest that cryptocurrency holders lost access to over 1.5 million Bitcoins during the disaster (though this figure may be an estimate), drawing worldwide attention. As people mourned these losses, they also began Bitcoin Key/Seed Phrase Storage Methods (2025 California Wildfire: 1.5 Million Bitcoins Lost)
- [Scammers Are Exploiting Multi-Signature Wallets (Tron): Stay Alert!](https://helloacm.com/scammers-are-exploiting-multi-signature-wallets-tron-stay-alert/) - I often receive messages like these, where someone asks for help transferring funds and provides the wallet's seed phrase or password. It might seem tempting, but it's too good to be true. Don’t fall for it—these funds cannot actually be transferred out. They are simply trying to trick you into transferring funds (like TRX) to Scammers Are Exploiting Multi-Signature Wallets (Tron): Stay Alert!
- [Ways to spot SEO scam – Signs that tell you about scam SEO companies](https://helloacm.com/ways-to-spot-seo-scam-signs-that-tell-you-about-scam-seo-companies/) - Ways to spot SEO scam – Signs that tell you about scam SEO companies SEO is a must for businesses today, and to succeed, SEO (Search Engine Optimisation) is a must for businesses today, and to succeed, it requires setting the right expectations and choosing an authentic SEO agency that plays the game by the rules. Unfortunately, there are plenty of SEO companies and professionals that make unrealistic promises about prompt success and dupe clients. When searching for SEO
- [Receiving a Blackmail/Scam Email saying that I watched Po*n....](https://helloacm.com/receiving-a-blackmail-scam-email-saying-that-i-watched-porn/) - A blackmail email pops into my work email-address this morning, claiming that they have evidences of me watching p**n... and threatens me that he will upload the video to friends, colleagues if I don\'t send bitcoins in 24 hours. A scam email is an email message designed to defraud a recipient out of money or personal information. These scam emails may look like legitimate emails from businesses, banks, or even government agencies and can contain links to malicious websites or attachments with viruses that can steal information. A blackmail email pops into my work
- [Beware of the Malicious Transactions on TRON Blockchain](https://helloacm.com/beware-of-the-malicious-transactions-on-tron-blockchain/) - I have seen such transactions of small amounts on both TRON and ETH blockchains. This transaction (shown below in the tron scan blockchain explorer) is suspected to be an attack from an account with the same ending characters as that of the user's account. Please be cautious of such scams. What are these? When you Beware of the Malicious Transactions on TRON Blockchain
- [The Major Security Flaws of Wirex (WirexApp) Exchange](https://helloacm.com/the-major-security-flaws-of-wirex-wirexapp-exchange/) - A lesson learned: Don't trust WirexApp. Beware of the Wirex Crypto Phishing Email Scam: I Lost 1000 GBP worth of USDT I have been a victim of a scam yesterday and I lost about 1355 USDT Crypto token (worth of 1000 GBP) due to opening a phishing email on the phone and had my phone The Major Security Flaws of Wirex (WirexApp) Exchange
- [The Genesis Block of the Bitcoin](https://helloacm.com/the-genesis-block-of-the-bitcoin/) - The origin of Bitcoin can be traced back to January 3, 2009, when an event known as the "Genesis Block" marked the beginning of the blockchain revolution. This was the first block created in the Bitcoin network, mined by the mysterious creator of Bitcoin, Satoshi Nakamoto. The Genesis Block was not only a technical milestone The Genesis Block of the Bitcoin
- [Introduction to Sui Blockchain](https://helloacm.com/introduction-to-sui-blockchain/) - In-Depth Look at the Sui Blockchain and Its Token Ecosystem What is the Sui Blockchain? High-Performance Blockchain:Sui, developed by Mysten Labs, is a next-generation blockchain focused on delivering exceptional performance through parallel transaction execution and efficient data storage mechanisms. Based on Move Programming Language:Move is a resource-oriented programming language, originally developed by Facebook's Diem project, Introduction to Sui Blockchain
- [NodeJs/Javascript Function to Check if a Transaction is Confirmed on Tron Blockchain via TronGrid API](https://helloacm.com/nodejs-javascript-function-to-check-if-a-transaction-is-confirmed-on-tron-blockchain-via-trongrid-api/) - Sometimes, we want to know if a given transaction is confirmed on the Tron Blockchain, and we can easily do this via the TronGrid API. To ensure a transaction is confirmed on Tron, the validation logic should focus on the transaction's status, which indicates whether it has been successfully processed by the Tron Virtual Machine NodeJs/Javascript Function to Check if a Transaction is Confirmed on Tron Blockchain via TronGrid API
- [Introduction to Pi Coin: Is it Really a Blockchain-Based Cryptocurrency?](https://helloacm.com/introduction-to-pi-coin-is-it-really-a-blockchain-based-cryptocurrency/) - I've heard of Pi coins long time ago, and some told me it is a shitcoin (or scam). People can mine the coins by installing an App on the smartphone. Pi Network is a cryptocurrency project promoted via a mobile app. Its goal is to enable ordinary people to "mine" cryptocurrency through their phones. Here Introduction to Pi Coin: Is it Really a Blockchain-Based Cryptocurrency?
- [Introduce to Solana Blockchain](https://helloacm.com/introduce-to-solana-blockchain/) - Solana is a high-performance blockchain platform designed to provide fast, secure, and scalable decentralized applications and crypto-currencies. It aims to address the scalability issues faced by other blockchain networks by utilizing a unique combination of technologies, including Proof of History (PoH), a novel consensus mechanism called Proof of Stake (PoS), and a horizontally scalable architecture. Introduce to Solana Blockchain
- [Four Facebook/Meta Interview Experiences](https://helloacm.com/four-facebook-meta-interview-experiences/) - Four Facebook/Meta Interview Experiences Over the years, I have interviewed with Facebook/Meta four times. Although I wasn't successful each time, I gained a lot of valuable insights. Facebook rebranded to Meta on October 28, 2021, and from here on, I'll refer to it as Meta. Facebook, Inc. has been renamed and rebranded as Meta as Four Facebook/Meta Interview Experiences
- [Do you believe in Bitcoins (or other Cryptocurrencies)?](https://helloacm.com/do-you-believe-in-bitcoins-or-other-cryptocurrencies/) - This means the price of good and service in bitcoin have to be constantly adjust in fractions of a bitcoin to ensure a consistent price or on the spot currency conversions will be required. You have all these problems plus the fact the value makes cyber attacks more likely as the ROI for cybercriminal launching attacks is more worthwhile. If your cyber wallet or exchange is hacked you can lose your investment.Before investing in cryptocurrencies you must be aware that your investment can go and down as cryptocurrencies are more commodity like than true currency. Taking Bitcoin as an example, it is the by product of processing blockchains, it is produced as part of the proof of work and is was used to encourage/reward people to
- [BTC Hard-Fork via C program (Linux) and How to Claim BCC?](https://helloacm.com/btc-hard-fork-via-c-program-linux-and-how-to-claim-bcc/) - BTC Hard-Fork via C program (Linux) and How to Claim BCC? The official method to claim the BCC is to export the private key of BTC wallet and re-load them into your BCC wallet, however, after the installation of BCC wallet on the same PC as BTC wallet, the funds immediately become available. The Bitcoin hard-forked this Month (1 Aug 2017), which is the biggest great news in the bitcoin world. The fork is the operation for process to duplicate the code except the PID. Similarly, the BCC (bitcoin cash) is the bitcoin forked. This process can be illustrated via the following C program that can be compiled
- [Remember to Specify the Change Address Parameter when Sending Funds from One Bitcoin Wallet to Another Address](https://helloacm.com/remember-to-specify-the-change-address-parameter-when-sending-funds-from-one-bitcoin-wallet-to-another-address/) - In Bitcoin transactions, there is a "change" parameter. See the following NodeJs code to send amount of bitcoins from "fromAddress" (aka unspent transaction outputs - UTXOs) to "receivingAddress", and the "changeAddress" needs to be specified to receive the remaining of the funds. var transaction = new Transaction() .from(fromAddress) // UTXOs. Feed information about what unspent Remember to Specify the Change Address Parameter when Sending Funds from One Bitcoin Wallet to Another Address
- [Asking ChatGPT the Price of a Bitcoin (Does ChatGPT Predict or Estimate?)](https://helloacm.com/asking-chatgpt-the-price-of-a-bitcoin-does-chatgpt-predict-or-estimate/) - Asking ChatGPT-3.5 (Without Plugins) the price of a bitcoin. TLDR; ChatGPT does not provide estimation or prediction in the future, but it can tell you the history because it was trainned on the internet data up to 2021. However, ChatGPT-4 or/and with the plugin - it might tell you real time price of a bitcoin Asking ChatGPT the Price of a Bitcoin (Does ChatGPT Predict?) Artificial General Intelligence, AGI
- [Celebrate Bitcoin Pizza day (Bitcoin Purchase Power)](https://helloacm.com/celebrate-bitcoin-pizza-day-bitcoin-purchase-power/) - Happy the Bitcoin Pizza Day! Wondering what on earth that is? Bitcoin is a decentralized digital currency (Distributed Ledger) that operates on a peer-to-peer network. Bitcoin allows users to transact directly, without the need for an intermediary like a bank or government. It is a form of cryptocurrency, which means it is secured by cryptography Celebrate Bitcoin Pizza day (Bitcoin Purchase Power)
- [When is Next Bitcoin Halving?](https://helloacm.com/what-is-next-bitcoin-halving/) - Bitcoin halving is an exciting event quickly approaching in the crypto world. Expected in 2024, traders will likely watch it closely for its potential to impact Bitcoin's price significantly. What Your Need to Know about Bitcoin Halving If you are planning on building a Bitcoin portfolio, then it is essential to understand halving. Here is When is Next Bitcoin Halving? Bitcoin Halving Event
- [Simple investment strategy: regular investment in Bitcoin/BTC (Dollar Cost Averaging)](https://helloacm.com/simple-investment-strategy-regular-investment-in-bitcoin-btc-dollar-cost-averaging/) - That day, I came across a post on LinkedIn: A person consistently purchased $30 worth of Bitcoin every day for 8 years. This strategy has a professional term called "Dollar Cost Averaging" (DCA). What was the outcome? A total investment of $86,370, now worth a staggering $1 million in Bitcoin. This guy bought $30 worth Simple investment strategy: regular investment in Bitcoin/BTC (Dollar Cost Averaging)
- [How AI and Dynamic Pricing Shape Our Everyday Costs](https://helloacm.com/how-ai-and-dynamic-pricing-shape-our-everyday-costs/) - A few days ago, I was having lunch with a colleague, and we started discussing AI (artificial intelligence), especially the recent popularity of large language models like ChatGPT over the past two or three years. He shared a story: once, while at the train station trying to get to the airport, the train service was How AI and Dynamic Pricing Shape Our Everyday Costs
- [TRON (TRX) and Huobi (HTX) could be the next 100x tokens](https://helloacm.com/tron-trx-and-huobi-htx-could-be-the-next-100x-tokens/) - Crypto Bull Market Analysis Today is truly a bull market for cryptocurrencies. Not only has Bitcoin surpassed $100,000, but various altcoins are also catching up. Among them, Justin Sun’s TRON (TRX) and his HTX (Huobi Token) have shown particularly impressive performances. TRON/TRX TRON (TRX) has been stable for a long time, even showing growth when TRON (TRX) and Huobi (HTX) could be the next 100x tokens
- [Adsense/Blog Traffic Declines after ChatGPT is Widely Adopted](https://helloacm.com/blog-traffic-declines-after-chatgpt-is-widely-adopted/) - This blog traffic has declined a lot in the last 90 days. The following shows the clicks from the Google Search in the Google Webmaster Dashboard. Take a look at the last 16 months you will see the trend is declining very obviously. The peaks of the curve correspond to the mid week working days, Adsense/Blog Traffic Declines after ChatGPT is Widely Adopted
- [Google Adsense Estimated Earnings](https://helloacm.com/google-adsense-estimated-earnings/) - Google adsense is a great tool to earn some pocket cash though displaying advs on websites (e.g. blogs). It is a contextual displaying platform which only displays advs related to the content of current webpage or website. I always wanted to know how to calculate the estimated earnings based on the exisitng known statistics. The following will explain in short some of the common terms used in google adsense. Google adsense is a great tool to earn some pocket cash though displaying advs on websites (e.g. blogs). It is a contextual displaying platform which only displays advs related to the content of current webpage or website. I always wanted to know how to calculate the estimated earnings based on the exisitng known statistics. The
- [Site Adsense Ads Adjustment](https://helloacm.com/site-adsense-ads-adjustment/) - It has little score for 'Revenue optimization' and I followed the suggested links to adjust my advs for better revenue. Today, I logged in to the Google Adsense Control Panel and I found this little score board. It has little score for 'Revenue optimization' and I followed the suggested links to adjust my advs for better revenue. Display both Text / Image to give the advertisers more choices. Image-advs are not that bad. At least
- [Block 426 Low CPC Advertiser URLs in Adsense - Using VBScript to Remove Duplicate Domains](https://helloacm.com/block-426-low-cpc-advertiser-urls-in-adsense-using-vbscript-to-remove-duplicate-domains/) - I think most bloggers have used google adsense to generate revenue from the traffic. I think most bloggers have used google adsense to generate revenue from the traffic. But from time to time, you will notice that the CPC (Cost Per Click) is extremely low, only a few cents per click. There are many factors that influence the CPC. For example, the website niche is one of the most Block 426 Low CPC Advertiser URLs in Adsense - Using VBScript to Remove Duplicate Domains
- [How Much In Theory Can You Earn With Adsense Within Your Bandwidth Allowance?](https://helloacm.com/how-much-in-theory-can-you-earn-with-adsense-within-your-bandwidth-allowance/) - How Much In Theory Can You Earn With Adsense Within Your Bandwidth Allowance? Your web hosting company provider must have a maximum bandwidth limit for your web hosting package if you are on either shared server, VPS or dedicated server. The phrase 'unlimited' sounds nice however, it can't be really unlimited. In my case, I am using a VPS (Virtual Private Server). The specs are dual core 2.8G,
- [Things You Should Never Do To Avoid Adsense Account Closed](https://helloacm.com/things-you-should-never-do-to-avoid-adsense-account-closed/) - Things You Should Never Do To Avoid Adsense Account Closed Adsense (From Google) is a great, easy to use online advertiser program. Unlike other alternatives, you do not need to get a significant amount of traffic before you apply for an adsense account. The CPC (Cost Per Click) is generous if you know how to optimise. The advs are contextual-based, which means that most of
- [How To Block Google Domains in Adsense?](https://helloacm.com/how-to-block-google-domains-in-adsense/) - Google also advertises itself through adsense. The CPC (Cost Per Click) is very low compared to others. Google also advertises itself through adsense. The CPC (Cost Per Click) is very low compared to others. The adsense usually shows google advs if there are no better matches. To improve your CPC, you can choose not to show google advs. For example, The approach is to go to your adsense account, and navigate to
- [Spot a dramatic increase of CPC by blocking low CPC URLs in Adsense](https://helloacm.com/spot-a-dramatic-increase-of-cpc-by-blocking-low-cpc-urls-in-adsense/) - So, you can input all (426) URLs into the text box provided and choose 74 from the google domains. The google ads itself (mainly the adwords), pays little so you can safely disallow them on your blogs. In this post, it is introduced to you that a list of 426 low CPC domains are blocked. The complete list of the 426 URLs can be downloaded here. Here is another list of almost-complete google domains. You can choose to block at most 500 domains in adsense for Low CPC URLs. So, you can
- [Adsense Earnings with [One Visit Per Second]](https://helloacm.com/adsense-earnings-with-one-visit-per-second/) - Adsense Earnings with [One Visit Per Second]
- [Adsense 8 Years - Statistics!](https://helloacm.com/adsense-8-years-statistics/) - Adsense 8 Years - Statistics! It is not a lot. As the website starts to get traffic in recent years. Let's keep up good work! It is now allowed to post publicly the CTR (Click Through Rate), CPC (Cost Per Click) but it is allowed to give you the numbers of the total earnings. I've been luckily with Adsense for 8 years now (My first domain was registered in 2006, Sept and I started putting adsense on my website 23/03/2006)! Today I login to Adsense Dashboard and it shows me this achievement card. It is now allowed to post publicly the CTR (Click Through Rate), CPC (Cost Per Click)
- [Bidvertiser - 10$ in 2 years - As Backup Ads in Google Adsense](https://helloacm.com/bidvertiser-10-in-2-years-as-backup-ads-in-google-adsense/) - Bidvertiser - 10$ in 2 years - As Backup Ads in Google Adsense I have signed-up bidvertiser ads (a Pay Per Click Ads serving company) in 2013. I have received 10$ revenue today, so that is only 10$ in two years! I didn't put any bidvertiser directly on the website. Rather, I use them as backup ads when adsense has problems showing (page or ads unit first created).
- [How to Show Related Articles using the Matched Content from Google Adsense?](https://helloacm.com/how-to-show-related-articles-using-the-matched-content-from-google-adsense/) - How to Show Related Articles using the Matched Content from Google Adsense? You can check if your domain is eligible for this [matched content] new feature - by going to settings - site management. Google Adsense has introduced a new [matched content] plugin for showing relevant articles/contents from your site. But it is not for all publisher. In order to experiment this new feature, you site must have a certain level of unique visitors. You can check if your domain is eligible for this [matched content] new feature -
- [Adsense Earning Statistics (2015)](https://helloacm.com/2015-adsense-earning-statistics/) - 2015 - Adsense Earning Statistics The average monthly earnings are 25.70 GBP (total 308.36 GBP, MAX = 42.98, MIN = 17.69) Happy New Year 2016 and here is a quick summary of the Adsense activities in 2015. The average monthly earnings are 25.70 GBP (total 308.36 GBP, MAX = 42.98, MIN = 17.69). I spent more than 30GBP per months on VPS, domains, CDN and most importantly, the dedicated time. Therefore, it is currently far from
- [Does CloudFlare (Cache Everything) Affect the Adsense?](https://helloacm.com/does-cloudflare-cache-everything-affect-the-adsense/) - Does CloudFlare (Cache Everything) Affect the Adsense? It shouldn\'t, no. AdSense will load content from its own servers using its client-side code, and that won\'t be affected by our caching. If I choose to cache everything, my understanding is that the Cloud Flare servers will provide a cached HTML version to visitors. So, my question is that in this case, does this affect the Adsense ads placements? For example, if a visitor in UK is browsing a cached page which is served by CloudFlare server
- [Adsense Brings The Page-Level Ads](https://helloacm.com/adsense-brings-the-page-level-ads/) - Adsense Brings The Page-Level Ads These two types of ads do not count towards the maximum-3-units per page. It can be globally controlled in the Adsense control panel. To use these, simply turn the switches on and copy the HTML code to the head tag. Login to Adsense and it says there are new experimental features: the page-level ads. Anchor/overlay ads Mobile only The Anchor/overlay ads shows a fixed ads on mobile devices, which doesn't scroll when the page scrolls. Vignette Ads The Vignette Ads shows a full-screen ads on mobile devices when suitable to do so. Users can dismiss
- [How to Add Adsense Ads to bbPress Forum?](https://helloacm.com/how-to-add-adsense-ads-to-bbpress-forum/) - How to Add Adsense Ads to bbPress Forum? bbPress is a lightweight and powerful forum wordpress. In order to add Adsense Ads in the forum, the best places to add is before and after forum topics. Add the following code to the child theme functions.php template. function bbpress_header_code() { echo "Your Ads"; } function bbpress_footer_code() { echo "Your Ads"; } add_action( "bbp_template_before_forums_index", "bbpress_header_code"
- [Does Blocking Adsense Categories Help in Earnings?](https://helloacm.com/does-blocking-adsense-categories-help-in-earnings/) - Does Blocking Adsense Categories Help in Earnings? There are lots of tricks to improve your adsense earnings, and blocking low-earning cateogries ads is one of them. Blocking Low Earnings Adsense Cateogries is one of the simplest, easist and straightforward approaches. It disallows some ads showing on your pages, while promoting good-quality ads. Idendify Low Earnings Ads First, you have to let your
- [How to Solve Adsense Ads Showing Blank Yellow Block By Adding the Site to the Verified List](https://helloacm.com/how-to-solve-adsense-ads-showing-blank-yellow-block-by-adding-the-site-to-the-verified-list/) - How to Solve Adsense Ads Showing Blank Yellow Block - by Adding the Site to the Verified List After adding the adsense code to your new domain, it usually takes a few minutes to hours before adsense advs start showing on your site. However, if this takes longer, it usually means something is not right. The first thing to check: if you have enabled the verified list - which means that only verified
- [How to Comply with GDPR in Adsense?](https://helloacm.com/how-to-comply-with-gdpr-in-adsense/) - How to Comply with GDPR in Adsense? Got a email from Google Adsense with title: [Action Required] Compliance with Google’s EU User Consent Policy Scary? no need to feel worried. It is actually very easy to fix this (to comply with GDPR in Adsense). On 25 May 2018, we updated Google's EU user consent policy to coincide with the General Data Protection
- [Minimal Adsense Requirement: 15 Unique Posts (Counter Low Value Content)](https://helloacm.com/minimal-adsense-requirement-15-unique-posts-counter-low-value-content/) - Minimal Adsense Requirement: 15 Unique Posts (Counter Low Value Content)I finally managed to get Adsense ads displayed on my personal site after several attempts. Initially, the site was approved automatically in the early days. However, since I removed the Adsense code for a long time, a manual review and approval process was required to reactivate it. Despite multiple submissions, my applications were repeatedly rejected
- [Is Ezoic Better Than Adsense?](https://helloacm.com/is-ezoc-better-than-adsense/) - I have used Ezoic in 2014 but forgot the details. And recently I have been contacted by Ezoic team to give it another try. Hey really great to see that you're consistently generating 100k+ monthly visits. This shows that consistently creating content that is ranking well. I noticed that you previously signed up with our Is Ezoic Better Than Adsense?
- [The mode vs multimode in Python](https://helloacm.com/the-mode-vs-multimode-in-python/) - Finding the mode of data in Python The statistics.mode() function in Python, part of the statistics module, returns the single most frequently occurring value (mode) in a dataset. Unlike multimode(), mode() raises an error if the dataset contains multiple modes (is multimodal) or if the data is empty. Here are examples to illustrate the behavior The mode vs multimode in Python
- [Python/Bash Script to Print the Optimized Parameters for MySQL Servers](https://helloacm.com/python-bash-script-to-print-the-optimized-parameters-for-mysql-servers/) - When optimizing MySQL performance, tailoring the configuration to the server's available memory is critical. Two scripts—one in Python and the other in Bash—offer automated solutions to calculate recommended MySQL settings based on the total RAM of the server. Both scripts extract memory information from the system and compute configuration values like innodb_buffer_pool_size, key_buffer_size, and other Python/Bash Script to Print the Optimized Parameters for MySQL Servers
- [Learn to Manage Your MySQL Database with a Python Script](https://helloacm.com/learn-to-manage-your-mysql-database-with-a-python-script/) - To create a Python script that manages MySQL database, we would typically need to perform operations such as connect to a MySQL server, create a database, create a table, insert data into the table, update data, delete data, and select data. For this, we would be using the mysql-connector-python package. If it's not installed, you Learn to Manage Your MySQL Database with a Python Script
- [A Simple PHP Command Line Tool to Convert MySQL Tables from MyISAM to InnoDB in Specified Database](https://helloacm.com/a-simple-php-command-line-tool-to-convert-mysql-tables-from-myisam-to-innodb-in-specified-database/) - MySQL MyISAM database engine has been depreciated in the latest version since 5.5.1. The MyISAM is table locking while InnoDB (now the default database engine for MySQL since 5.5.1) employs the row-level rocking. InnoDB should be the preferred and recommended database engine if you want to create new applications/tables. One deficiency of MyISAM tables is A Simple PHP Command Line Tool to Convert MySQL Tables from MyISAM to InnoDB in Specified Database
- [How to Print MySQL Table Summary using PHP?](https://helloacm.com/how-to-print-mysql-table-summary-using-php/) - How to Print MySQL Table Summary using PHP? What we want to know is the size of the data and the size of the index, you could use the following PHP script to print such information. The MySQL table has a command Show Table Status which prints a table summary, but it contains lots of information about all tables in the current database (to change database, use 'use database_name'), which is not so user friendly. What we want to know is the size of the data and the size of the
- [Secure the Linux Server by Disallow the Remote Root Login (SSH and FTP and MySQL database)](https://helloacm.com/secure-the-linux-server-by-disallow-the-remote-root-login-ssh-and-ftp/) - Secure the Linux Server by Disallow the Remote Root Login (SSH and FTP and MySQL database) In this post, we know how important the security is. If you manage your server (VPS, cloud hosting or dedicated server), then you must have root access. The root is like the administrator account on windows, but only more powerful (you can basically do anything). It is probably not a good idea to rename the
- [Bash Script to Check, Repair, Optimise and Backup MySQL database](https://helloacm.com/bash-script-to-check-repair-optimise-and-backup-mysql-database/) - I have a VPS (Virtual Private Server) and I have just move another domain onto this. I have a VPS (Virtual Private Server) and I have just move another domain (steakovercooked.com) onto this. I find it useful to have a script that can automatically check, repair, optimise and backup the MySQL databases. It is also nice to set this running at crontab so you don't need to manually do it every Bash Script to Check, Repair, Optimise and Backup MySQL database
- [Duplicate a MySQL table - Copy Table / Duplicate Database / PHP Script](https://helloacm.com/duplicate-a-mysql-table-copy-table-duplicate-database-php-script/) - Duplicate a MySQL table - Copy Table / Duplicate Database / PHP Script Suppose if you want to copy a Table to another, this can be done in MySQL with two steps. The first one is to copy the table structure, and the second step is to fill in the data with the original table. Copy the Table Structure The syntax is straightforward in MYSQL Database. Create Table
- [How to Fix MySQL Crash due to OOM Error?](https://helloacm.com/mysql-server-stopped-due-of-out-of-memory-exception-on-ubuntu-vps/) - MySQL server stopped due of out of memory exception on Ubuntu VPS As you may know, my three websites are hosted on a VPS starter package from QuickHostUK - Unlimited Web Hosting. It costs 7 pounds per month, and what I get is pretty much enough for small websites. The VPS starter provides 1 core, MySQL server stopped due of out of memory exception on Ubuntu VPS How to Fix MySQL Crash due to OOM Error?
- [Running Apache Server (PHP + MySQL) on Raspberry PI](https://helloacm.com/apache-server-php-mysql-on-raspberry-pi/) - Apache Server (PHP + MySQL) on Raspberry PI, Raspberry PI origins from UK. It is a small (credit-card size) fully functional PC that installs Linux. To now, there are two models A and B of Raspberry PI. Raspberry PI origins from UK. It is a small (credit-card size) fully functional PC that installs Linux. To now, there are two models A and B of Raspberry PI. The A model has 1 USB, 256MB RAM and The enhanced B model has 2 USB, 512 RAM. Both are equipped with ARM 700MHz (single core)
- [How to Optimise SQL Queries? Quick Tips](https://helloacm.com/how-to-optimise-sql-queries-quick-tips/) - SQL is the language to interact with databases, so we need to make them as fast as possible as the Database Operations may usually be expensive. Use indexes Indices should be put on tables. A table should at least have a primary key as a primary index. Indices should be carefully added to improve the How to Optimise SQL Queries? Quick Tips
- [Recovery Models in SQL Server](https://helloacm.com/recovery-models-in-sql-server/) - Recovery Models in SQL Server With Microsoft SQL Server, there are three different Recovery Models associated and each model hints to how the transactions are logged such as, whether the Recovery Model allows backing up and what types of restore operations are available. When we talk stuff related to SQL Server and database, Recovery is an imperative objective that one shouldn't underestimate. With Microsoft SQL Server, there are three different Recovery Models associated and each model hints to how the transactions are logged such as, whether the Recovery Model allows backing up and what types of restore operations
- [Database Optimisation Script in PHP](https://helloacm.com/database-optimisation-script-in-php/) - Well, sometimes, you probably need to optimise your MySQL tables. Well, sometimes, you probably need to optimise your MySQL tables. In order to avoid the hassle loggin to your remote SSH server, you probably want to write a script and put it somewhere accessible under HTTP protocol, e.g., http://www.yourdomain.com/somewheresafe/optimise.php The php well supports mysql connections. It is very handy to have the following script ready.
- [The Sunset of OneKey Crypto Card](https://helloacm.com/the-sunset-of-onekey-crypto-card/) - I learned about OneKey, a cryptocurrency cash-out card, a couple of years ago, but I only registered to use it at the end of last year. At that time, I paid $99 to upgrade directly to the top-tier Black Card. Over the past year, I’ve used the card sporadically, mainly for paying for VPS hosting The Sunset of OneKey Crypto Card
- [Teaching Kids Programming - Generate Binary Strings Without Adjacent Zeros (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-generate-binary-strings-without-adjacent-zeros-recursive-depth-first-search-algorithm/) - You are given a positive integer n. A binary string x is valid if all substrings of x of length 2 contain at least one "1". Return all valid strings with length n, in any order. Example 1: Input: n = 3 Output: ["010","011","101","110","111"] Explanation: The valid strings of length 3 are: "010", "011", "101", Teaching Kids Programming - Generate Binary Strings Without Adjacent Zeros (Recursive Depth First Search Algorithm)
- [The Young Prompt Engineers](https://helloacm.com/the-young-prompt-engineers/) - My sons were excited to show me the Text to Image feature using Microsoft Bing. They said they accidentally found this feature at Edge Browser the Toolkis vertical bar on the right. The Microsoft Bing has a "Image Creator" which allows you describe what to draw. Prompt engineering is a concept in artificial intelligence (AI), The Young Prompt Engineers, Artificial General Intelligence, AGI
- [Crypto Exchanges: Return Coins to Original Address](https://helloacm.com/crypto-exchanges-return-coins-to-original-address/) - Refunds from exchanges are usually returned to the original address rather than directly depositing the Cryptocurrency into the exchange account. The main reasons are as follows: Security Returning to the original address ensures the funds are returned to their original source (wallets), preventing misrouting or sending to incorrect addresses. If funds are directly deposited into
- [Ionomy Exchange Has Absconded with Investors' Coins](https://helloacm.com/ionomy-exchange-has-absconded-with-investors-coins/) - The last good response for Ionomy Crypto Exchange appears to be in June 2024. I have some BLURT tokens on the Ionomy exchange, which I haven’t checked for a while. Recently, I wanted to log in because the bull market has arrived, and BLURT has surged significantly. However, the website is completely inaccessible. The Ionomy Ionomy Exchange Has Absconded with Investors' Coins
- [Why I like to Blog on Steemit](https://helloacm.com/why-i-like-to-blog-on-steemit/) - In the past few years, I’ve been actively blogging on Steemit in addition to maintaining a few WordPress blogs. I prefer blogging on Steemit because of several unique advantages: Content Stored on Blockchain On Steemit, all posts and comments are stored immutably on the blockchain. This means the content is not only persistent but also Why I like to Blog on Steemit
- [Teaching Kids Programming - Butterfly Theorem in Quadrilateral (Geometry)](https://helloacm.com/teaching-kids-programming-butterfly-theorem-in-quadrilateral-geometry/) - Convex and Concave Quadrilateral A quadrilateral is a polygon with four sides and four vertices. The distinction between concave and convex quadrilaterals lies in the arrangement of their angles and vertices: Convex Quadrilateral Definition: A quadrilateral is convex if all its interior angles are less than 180 degree, and no line segment between two vertices Teaching Kids Programming - Butterfly Theorem in Quadrilateral (Geometry)
- [Introduction to Impermanent Loss](https://helloacm.com/introduction-to-impermanent-loss/) - #post_excerptweb3 Introduction to Impermanent Loss
- [Optimizing Cryptocurrency Conversion: A Comparative Study of Wirex and Crypto Exchange Rates](https://helloacm.com/optimizing-cryptocurrency-conversion-a-comparative-study-of-wirex-and-crypto-exchange-rates/) - The process of converting USDT (Tether) to local currencies like the British Sterling (GBP) using crypto platforms such as Wirex and Crypto can be a bit challenging due to the varying exchange rates. To illustrate, if we consider the exchange rates for converting 5000 USDT to GBP, Wirex offers a rate of 4000 GBP, whereas Optimizing Cryptocurrency Conversion: A Comparative Study of Wirex and Crypto Exchange Rates
- [Crypto Token Exchange Rate Computation Based on Breadth First Search Algorithm on Poloniex API](https://helloacm.com/crypto-token-exchange-rate-computation-based-on-breadth-first-search-algorithm-on-poloniex-api/) - The P-site of the crypto world is Poloniex, which was acquired by Justin Sun a few years ago. It is an Crypto exchange. I used Poloniex long time ago, and my impression of it wasn't very good back then. However, my opinion of it has improved now because P-site provides free API endpoints (Public Endpoints)
- [Best Security Practices for Holding Cryptocurrencies on Exchanges](https://helloacm.com/best-security-practices-for-holding-cryptocurrencies-on-exchanges/) - Previously, I was scammed about 1355 USDT because I clicked a phishing link that I shouldn't have. A lesson learned: The Major Security Flaws of Wirex (WirexApp) Exchange In the world of cryptocurrencies, security is paramount. While the decentralized nature of blockchain offers robust protection against many types of fraud, the exchanges where you buy, Best Security Practices for Holding Cryptocurrencies on Exchanges
- [The USDT to GBP Exchange Rate Comparison: Crypto.com, Ledger and Wirex](https://helloacm.com/the-usdt-to-gbp-exchange-rate-comparison-crypto-com-vs-wirex/) - USDT (Tether) is a stablecoin that is pegged to the US dollar. It is designed to maintain a 1:1 parity with the US dollar, meaning that one USDT is always equal to one US dollar. It is used mainly as a means of transferring value between different digital asset exchanges, allowing traders and investors to The USDT to GBP Exchange Rate Comparison: , Ledger and Wirex
- [Understanding Availability Percentages: Calculating Downtime for Your Systems](https://helloacm.com/understanding-availability-percentages-calculating-downtime-for-your-systems/) - In System Design Interviews, the availability percentages are the fundamental that a software engineer should be familiar with. In the world of system reliability, availability percentages like 99.9% or 99.99% are critical benchmarks. But what do these numbers really mean, and how do they translate into actual downtime? In this post, we’ll walk through how Understanding Availability Percentages: Calculating Downtime for Your Systems
- [Teaching Kids Programming - Delete Nodes From Linked List Present in Array](https://helloacm.com/teaching-kids-programming-delete-nodes-from-linked-list-present-in-array/) - You are given an array of integers nums and the head of a linked list. Return the head of the modified linked list after removing all nodes from the linked list that have a value that exists in nums. Example 1: Input: nums = [1,2,3], head = [1,2,3,4,5] Output: [4,5] Explanation: Remove the nodes with Teaching Kids Programming - Delete Nodes From Linked List Present in Array
- [Why and How You Should Stop the ChatGPT and Bytedance Bots Crawling Your Pages?](https://helloacm.com/why-and-how-you-should-stop-the-chatgpt-and-bytedance-bots-crawling-your-pages/) - Recently, I have seen my servers overloaded (High CPU Usage) and I looked into the apache logs and I see the access logs from ChatGPT Bot aka GPTBot/1.0 and Bytedance Bots aka Bytespider. You can check the top 10 IPs that access your server via the following BASH command: #!/bin/bash awk '{a[$1]++}END{for(v in a)print v, Why and How You Should Stop the ChatGPT and Bytedance Bots Crawling Your Pages?
- [Crypto is Just the Tip of the Blockchain Iceberg](https://helloacm.com/crypto-is-just-the-tip-of-the-blockchain-iceberg/) - When most people hear the word "blockchain," they instantly think of cryptocurrencies like Bitcoin and Ethereum. While crypto has garnered the lion’s share of attention, it’s important to recognize that it’s just one application of the underlying technology: blockchain. Imagine an iceberg floating in the ocean; cryptocurrency is the visible tip above water, while the Crypto is Just the Tip of the Blockchain Iceberg
- [How to Use dd Command to Test the Hard Disk Speed?](https://helloacm.com/how-to-use-dd-command-to-test-the-hard-disk-speed/) - To test the disk speed with the dd command, you can use it to write a temporary file and measure the write and read speeds. Here are examples: Test Write Speed This command writes a 1GB file to your disk, providing the write speed: dd if=/dev/zero of=testfile bs=1G count=1 oflag=dsync if=/dev/zero uses a source of How to Use dd Command to Test the Hard Disk Speed?
- [How to Check Hard Disk Type (NVMe SSD) on Servers/VMs?](https://helloacm.com/how-to-check-hard-disk-type-nvme-ssd-on-servers-vms/) - The post shows a different ways to test if your hard drives on the servers are SSD or NVMe. Another one would be to use the "dd" command to test the read/write speed, which should give you a rough idea. Check Disk Type: SSD (Solid State Driver) To check if the disk on your VPN How to Check Hard Disk Type (NVMe SSD) on Servers/VMs?
- [Difference Between Product Design Interview and System Design Interview](https://helloacm.com/difference-between-product-design-interview-and-system-design-interview/) - In a Facebook/Meta interview (Software Engineering Roles including Site Reliability Engineers and Enterprise Engineers), the Product Design and System Design interviews serve distinct purposes and require different approaches: Usually, the coding interviews and behaviour interviews (culture fits) are the minimal requirements, but the design skills (Product Design or System Design) determines the level of seniority. Difference Between Product Design Interview and System Design Interview
- [Use DirectX Diagnostic Tool (dxdiag) to View System Information](https://helloacm.com/use-directx-diagnostic-tool-dxdiag-to-view-system-information/) - The DirectX Diagnostic Tool (dxdiag) is a built-in utility in Windows that provides detailed information about a computer's hardware components and DirectX settings, which are essential for running multimedia applications. By typing "dxdiag" into the Run dialog, users can access system details such as graphics card model, audio device configurations, and driver information. This tool Use DirectX Diagnostic Tool (dxdiag) to View System Information
- [Draw a Pumpkin using Matlab](https://helloacm.com/draw-a-pumpkin-using-matlab/) - The halloween is approaching. Mathworks presents the following Matlab code to draw a Pumpkin. % Pumpkin [X,Y,Z]=sphere(200); R=1-(1-mod(0:.1:20,2)).^2/12; x=R.*X; y=R.*Y; z=Z.*R; c=hypot(hypot(x,y),z)+randn(201)*.03; surf(x,y,(.8+(0-(1:-.01:-1)'.^4)*.3).*z,c, 'FaceColor', 'interp', 'EdgeColor', 'none') % Stem s = [ 1.5 1 repelem(.7, 6) ] .* [ repmat([.1 .06],1,10) .1 ]'; [t, p] = meshgrid(0:pi/15:pi/2,0:pi/20:pi); Xs = -(.4-cos(p).*s).*cos(t)+.4; Zs = (.5-cos(p).*s).*sin(t) + .55; Draw a Pumpkin using Matlab
- [The bitand in Matlab](https://helloacm.com/the-bitand-in-matlab/) - The bitand in Matlab To be honest, I am not a fan of Matlab but I sometimes have to use matlab to plot nice figures for publications. If you are a 'traditional' C-like programmers, you must be very familiar with the bit and and conditional (logic) and, which is often used as '&' and '&&' respectively. However, this is
- [How to Plot 3D Line Vectors in Matlab Using quiver3 ?](https://helloacm.com/how-to-plot-3d-line-vectors-in-matlab-using-quiver3/) - The Matlab is a very sophisticated mathematics tool that can help you analyse, visualize and process data. Almost all researchers rely on this tool and it saves you tons of code to re-invent the wheels because matlab already provides lots of functions/APIs. The Matlab is a very sophisticated mathematics tool that can help you analyse, visualize and process data. Almost all researchers rely on this tool and it saves you tons of code to re-invent the wheels because matlab already provides lots of functions/APIs. Suppose, you have quite a lot of rays (a 3D fixed point with
- [How to Import/Export Matlab *.mat file to Python?](https://helloacm.com/how-to-importexport-matlab-mat-file-to-python/) - How to Import/Export Matlab *.mat file to Python? The matlab variables (matrices, arrays) can be stored in *.mat files, in order to read this data in Python, you would need a scipy.io package. import scipy.io And, after that, the loadmat is the way to go. mat = scipy.io.loadmat('file.mat') Similarly, you can use savemat to export to *.mat files. arr = [x**2 for x
- [Enabling the Debug Console for WSL2 (Windows Subsystem for Linux)](https://helloacm.com/enabling-the-debug-console-for-wsl2-windows-subsystem-for-linux/) - The "Enable debug console" option in Windows Subsystem for Linux (WSL) settings allows you to access detailed debugging information directly from the WSL environment. This feature is helpful for troubleshooting issues with WSL processes, providing insights into system calls, kernel interactions, and performance bottlenecks. Especially it is very useful in debugging when your WSL env Enabling the Debug Console for WSL2 (Windows Subsystem for Linux)
- [Teaching Kids Programming - Find if Digit Game Can Be Won](https://helloacm.com/teaching-kids-programming-find-if-digit-game-can-be-won/) - You are given an array of positive integers nums. Alice and Bob are playing a game. In the game, Alice can choose either all single-digit numbers or all double-digit numbers from nums, and the rest of the numbers are given to Bob. Alice wins if the sum of her numbers is strictly greater than the Teaching Kids Programming - Find if Digit Game Can Be Won
- [Site Reliability Engineer (SRE) vs Software Engineer](https://helloacm.com/site-reliability-engineer-sre-vs-software-engineer/) - In recent years, many Big Companies have job openings for Site Reliability Engineer (SRE). For example, Google, Facebook/Meta or Bytedance Tiktok. Please note that Software Engineer is the same as Software Development Engineer which is called by Amazon. A Site Reliability Engineer (SRE) is a role that focuses on ensuring the reliability, scalability, and performance Site Reliability Engineer (SRE) vs Software Engineer
- [Teaching Kids Programming - Convert Array to Linked List and Vice Versa](https://helloacm.com/teaching-kids-programming-convert-array-to-linked-list-and-vice-versa/) - Here's a step-by-step tutorial on how to convert an array to a linked list and vice versa in Python. This can be useful for different scenarios where you need to change data structures based on specific use cases, such as memory optimization, ease of data manipulation, or iteration. Part 1: Convert an Array to a Teaching Kids Programming - Convert Array to Linked List and Vice Versa
- [Last Minute Tips before Phone Interview](https://helloacm.com/last-minute-tips-before-phone-interview/) - Last Minute Tips before Phone Interview Here are some last minute tips before your phone interview. Here are some last minute tips before your phone interview. You'll be coding, real-time. If you don't have experience of using them - try them out. Coding fluency is prerequisite for the role, so avoid pseudo-code if you can. Your solutions will be shown to senior engineers at a later date, so need to be
- [Google Interview Question - Print Message](https://helloacm.com/google-interview-question-print-message/) - Google Interview Question - Print Message This is the technical phone interview question from Google. This is the technical phone interview question from Google. Google has offices in London but the call was from Google Switzerland (+41). The interview lasts for 45 minutes. Given a list of messages and the date/time, print each message if it is not printed in the last 10 seconds. It is possible that several messages
- [Microsoft Interview Question - Compute the Area of the Triangle](https://helloacm.com/microsoft-interview-question-get-the-area-of-the-triangle/) - Microsoft Interview Question - Get the Area of the Triangle The following seems an easy question, to get the area of the triangle with the slope equals to 10 and the height equals to 6. The following seems an easy question, to get the area of the rectangluar triangle with the slope equals to 10 and the height equals to 6. If your answer is 30 (10x6/2), then you are falling into the trap: Such triangle doesn't exist at all! It does not exist! If we label the triangle with
- [Why You Should Go to an Interview Every Year?](https://helloacm.com/go-to-an-interview-even-if-you-are-not-changing-your-job/) - Go to an Interview even if you are not changing your job. Even if you are not changing your job, it is still a good idea to attend at least 1 interview every year Even if you are not changing your job, it is still a good idea to attend at least 1 interview every year. This is to: Know your current market values Suppose you work at a place for quite a long time, you feel comfortable, which sometimes is not good for you to understand your current
- [Some Telephone Interview Questions for C++/C# Software Enginners](https://helloacm.com/some-telephone-interview-questions-for-c-c-software-enginners/) - Some Telephone Interview Questions for C++/C# Software Enginners What is a Garbage Collector in C# (what does it do). Are the objects automatically GC-ed in C#? If not, why/how? Are the structs automatically GC-ed in C#? Tell me the difference between stack and heap (memory management) What is a virtual destructor in C++? How do you run two methods in parallel in C#?
- [Interview Coding Exercise - Nested String (Python)](https://helloacm.com/interview-coding-exercise-nested-string-python/) - Interview Coding Exercise - Nested String (Python) The idea is push a opening tag to the stack and pop one from and check if it matches when we see the closing tag. The only thing you need to pay attention to is to check if the stack is empty when you want to pop an element from the stack. Nested String A string S consisting of N characters is considered to be properly nested if any of the following conditions is true: S is empty; S has the form "(U)" or "[U]" or "{U}" where U is a properly nested string; S has the form "VW" where V and W are properly nested strings.
- [How to Prepare for an Amazon Interview? My Amazon Interview Experience](https://helloacm.com/how-to-prepare-for-an-amazon-interview-my-amazon-interview-experience/) - How to prepare an successful Amazon interview, how to get a job in Amazon, my Amazon interview saga. The amazon interview tips. Amazon is one of the top IT/technology company in the world. It is huge. Many excellent software engineers want to work for Amazon and so do I. I applied to Amazon three times in total. THe first two times were not successful and at amazon.jobs it says “was not selected”. My Amazon Interview Experience I
- [A Microsoft Coding Interview Screening for Position Principal Software Engineer](https://helloacm.com/a-microsoft-coding-interview-screening-for-position-principal-software-engineer/) - A Microsoft Coding Interview Screening for Position Principal Software Engineer From hardware, OS, API, applications, which technology stacks are you most comfortable with? and why? This question is designed to see how you fit to the Microsoft teams. A while ago, I was applying a job (Principal Software Engineer) for Microsoft, in Cambridge the Microsoft Research Center. Principle Software Engineer level in Microsoft is a very decent, high level, which is more than L5 (Senior SWE) in Google and (SDE III, Senior SDE L6) in Amazon. Big IT giants have their own Recruitment
- [Facebook/Meta Onsite Interview Preparation Part 1: Motivation/Bahavior Questions](https://helloacm.com/facebook-onsite-interview-preparation-part-1-motivation-bahavior-questions/) - Facebook/Meta Onsite Interview Preparation Part 1: Motivation/Bahavior Questions This part focuses on personal attributes and behaviors. Congratulations! You have passed the CV screening and the telephone coding assessment of Facebook. Facebook interviews are hard, like other Giants: Google, Amazon, or Microsoft. In Facebook, every engineer should be able to design and implement. There is no 'architect' and every software engineer is a architect. That is one of the reasons that Facebook
- [Simply Explained: Matthew Effect](https://helloacm.com/simply-explained-matthew-effect/) - The Matthew Effect is a sociological and economic phenomenon that describes how "the rich get richer and the poor get poorer." This concept originates from a passage in the Gospel of Matthew in the New Testament: "For to everyone who has, more will be given, and they will have an abundance; but from the one Simply Explained: Matthew Effect
- [Facebook Onsite Interview Preparation Part 2: Coding Questions](https://helloacm.com/facebook-onsite-interview-preparation-part-2-coding-questions/) - At least 2x 45mins interviews where you need to know your data structures and algo's, it's similar to the phone interview. We need to know you can translate your thoughts to code and work around any constraints. The Facebook Onsite Interview will generally consist of three parts: Motivations, and Part 2 Coding, and Part 3 Product Design. This is the Part Two: Coding. At least 2x 45mins interviews where you need to know your data structures and algo's, it's similar to the phone interview. In general, you need to translate your thoughts
- [The Facebook Initial Coding Interview Experience](https://helloacm.com/the-facebook-initial-coding-interview-experience/) - The Facebook Initial Coding Interview Experience A few weeks ago, I applied to Facebook London, and quickly I was contacted by the FB Recruiter for an initial chat. Soon I had the telephone coding interview with one of the FB engineers in London. Update: I have been careful enough not to leak any confidential information after signing the NDA (non-disclouse agreement) with Facebook. I think, the NDA refers to confidential information such as the important projects ongoing by company, but sharing the personal experience is fine. 9 Years ago, I applied to Facebook USA when I was about
- [Facebook Onsite Interview Preparation Part 3: How to Ace a Design Interview?](https://helloacm.com/facebook-onsite-interview-preparation-part-3-how-to-ace-a-design-interview/) - Facebook Onsite Interview Preparation Part 3: How to Ace a Design Interview? Most design interview should consiste of 25% of the time in front end and client side, The Facebook Onsite Interview will generally consist of three parts: Motivations, and Part 2 Coding/Algorithm, and Part 3 Product Design. This is the Part Three: Design. The so-called Design problems are based on designing a product from scratch. Resources for Design Problems https://github.com/donnemartin/system-design-primer http://highscalability.com/blog/category/example http://www.hiredintech.com/system-design https://code.facebook.com/backend/ https://code.facebook.com/posts/816473015039157/making-facebook-s-software-infrastructure-more-energy-efficient-with-autoscale/ Most design interview should consiste of 25% of
- [What are Big4 Tech Companies looking for in the technical interviews (Phone Screening)?](https://helloacm.com/what-are-big4-tech-companies-looking-for-in-the-technical-interviews-phone-screening/) - What are Big4 Tech Companies looking for in the technical interviews (Phone Screening)? Big4 refers to Google, Amazon, Facebook and Microsoft. They are the top internet/software companies that most Software Engineers dream for. Big4 refers to Google, Amazon, Facebook and Microsoft. They are the top internet/software companies that most Software Engineers dream for. The technical interviews consist of Big4 are quite similar: mostly a phone screening and if successful followed by onsite interview which consists of 4 to 5 rounds. For phone interviews: the Big4 is looking to
- [Coding Interview Tips for Software Engineers](https://helloacm.com/coding-interview-tips-for-software-engineers/) - Coding Interview Tips for Software Engineers Practice do make a huge difference! Make sure you\'re prepared for your interview by practicing coding exercises in different categories. Coding Exercises Practice do make a huge difference! Make sure you're prepared for your interview by practicing coding exercises in different categories. Coding Interview Tips and Guidance Make sure you understand the question. Read it back to your interviewer. Be sure to ask any clarifying questions. An interview is a two-way conversation; feel free to
- [Facebook/Meta Interview Tips and Guidance](https://helloacm.com/facebook-interview-tips-and-guidance/) - Facebook Interview Tips and Guidance problem I have attended a Facebook interview last year - although I didn't get the job offer, but here is a few tips and guidance that might help you if you are interviewing with Facebook shortly. It might also help you if you are interviewing with other Top Internet/Software companies such as Big4: Apple, Amazon, Google
- [Onsite Interview Tips for Facebook / Google / Microsoft / Amazon / Apple](https://helloacm.com/onsite-interview-tips-for-facebook-google-microsoft-amazon-apple/) - Onsite Interview Tips for Facebook/Google/Microsoft/Amazon/Apple On the final interviews (aka onsite), it usually involves at least 4 rounds (Google may have 5 rounds). It consists of at least 2 coding interviews (focusing on data structures and algorithms), 1 behavior questions (leadership), and 1 or 2 system design Guess what, the Big 5 (Top Internet / Software Companies) have similar recruiting process for SDE/SWE/SRE/SE positions (Software Engineer, Software Development Engineer, Site Reliable Engineering). On the final interviews (aka onsite), it usually involves at least 4 rounds (Google may have 5 rounds). It consists of at least 2 coding interviews (focusing on data structures
- [Two Interview Experience with ByteDance Tiktok London](https://helloacm.com/two-interview-experience-with-bytedance-tiktok-london/) - First TikTok London Interview Four years ago, in December 2020, I applied for the System Engineer position at TikTok London. At that time, the TikTok team in London was being established, and the engineer who interviewed me was from Beijing. The first round was mainly a background check. They went through my resume, asking questions Two Interview Experience with ByteDance Tiktok London
- [45 Minute Mock Interview (Coding, System Design) + Career Development Advices](https://helloacm.com/45-minute-mock-interview-coding-system-design-career-development-advices/) - Many major tech companies, including FANG (Facebook/Meta, Apple, Netflix, Google) and Microsoft, require multiple rounds of interviews before extending a job offer. These typically include coding, system design, and behavioral assessments to evaluate cultural fit. I’m offering 45-minute mock interviews to help you prepare for coding and system design rounds. With my experience as an 45 Minute Mock Interview (Coding, System Design) + Career Development Advices
- [Docker, Virtual Machines (VMs) and Kubernetes (K8s)](https://helloacm.com/docker-virtual-machines-vms-and-kubernetes-k8s/) - Docker vs. Virtual Machines (VMs) Overview: Both Docker and VMs are used for deploying and running applications in isolated environments, but they do so differently. Docker (Containers) Lightweight: Containers share the host OS kernel, making them more lightweight and faster to start up than VMs. Isolation: Docker provides process-level isolation, meaning multiple containers can run Docker, Virtual Machines (VMs) and Kubernetes (K8s)
- [Introduction to Crypto Defi: Flexi Max (HTX)](https://helloacm.com/introduction-to-crypto-defi-flexi-max-htx/) - HTX Crypto Exchange has a range of different DeFi Products (De-centralised Finance) and Flexi Max is one of the interest ones. TLDR; you can transfer your Crypto coins (e.g. USDT) and subscript to Flexi Maxi product. After subscription, you can withdraw your funds at any time, however, different rates apply, if you hold your funds Introduction to Crypto Defi: Flexi Max (HTX)
- [ChatGPT Use Case for Software Engineer: Review Pull Requests (Code Reviews)](https://helloacm.com/chatgpt-use-case-for-software-engineer-review-pull-requests-code-reviews/) - One interesting use case for ChatGPT is its ability to assist in reviewing code in a Pull Request, which can be incredibly beneficial. By pasting the code into ChatGPT and asking for a review, it can identify potential issues and offer suggestions to enhance the overall quality of the code. However, you shouldn't fully (100%) ChatGPT Use Case for Software Engineer: Review Pull Requests (Code Reviews)
- [What is the Enterprise Engineer in Meta? (Comparisions to Software Engineer Roles)](https://helloacm.com/what-is-the-enterprise-engineer-in-meta-comparisions-to-software-engineer-roles/) - I've recently got an invitation email from a Meta Recruiter about a Staff Enterprise Engineer role in Meta London: What is Enterprise Engineer in Meta? An Enterprise Engineer at Meta focuses on designing, developing, and maintaining the internal tools and systems that help the company's employees be productive and efficient. This role is more internally What is the Enterprise Engineer in Meta? (Comparisions to Software Engineer Roles)
- [Software Engineer Interview Question: What is TCP/IP (4 Layer vs OSI 7 Layer)?](https://helloacm.com/what-is-tcp-ip-4-layer-vs-osi-7-layer/) - Note: recently this has been asked in the first round of the technical interviews by Tiktok (Bytedance) for a Site Reliable Engineer role in London. TCP/IP Protocols is a fundamental concept in Computer Networking (Computer Science), which every Software Engineer should be faimilar with. TCP/IP (Transmission Control Protocol/Internet Protocol) is a set of networking protocols What is TCP/IP (4 Layer vs OSI 7 Layer)? Software Engineer Interview Question:
- [Software Engineering Interview Question: What Happens When You Type Google.com in the Browser Address Bar?](https://helloacm.com/interview-question-what-happens-when-you-type-google-com-in-the-browser-address-bar/) - I think this is one of the most popular interview questions for Software Engineering Positions. Recently it has been said this has been asked in one of the Tiktok Interview. To answer the question “What happens when you type https://www.google.com in the browser?” in a detailed and structured manner for an interview, break the process Software Engineering Interview Question: What Happens When You Type Google.com in the Browser Address Bar?
- [Excel Tutorial: SUMIF Function](https://helloacm.com/excel-tutorial-sumif-function/) - The SUMIF function in Excel allows you to sum the values in a range that meet a specific condition (criterion). Here's the basic syntax: =SUMIF(range, criteria, [sum_range]) range The range of cells that you want to apply the condition to. criteria The condition that must be met. It can be a number, expression, cell reference, Excel Tutorial: SUMIF Function
- [Iterative Computing Fib Number using Excel](https://helloacm.com/iterative-computing-fib-number-using-excel/) - The Fibonacci Number is very well known, probably due to its recursive definition. [read this] The Fibonacci Number is very well known, probably due to its recursive definition. [read this] In Excel, you can easily list the Fib series in the cells using drag and auto-complete technique. All you have to do is enter first two values of the Fib numbers i.e. 1, 1 in one colume e.g. A1, A2.
- [The Javascript Function (Node Js) to Compare Version Number Strings](https://helloacm.com/the-javascript-function-to-compare-version-number-strings/) - Given two version numbers such as 0.20.7 and 0.20.8 you want to know which comes first. The version numbers are a few integer numbers that are concatenated by dots and sometimes a small number (usually the last one) skipped is usually the patch version. For example, 0.20.7.1 is usually the patch version of version number The Javascript Function (Node Js) to Compare Version Number Strings
- [The minpoll and maxpoll in Network Time Protocol (NTP)](https://helloacm.com/the-minpoll-and-maxpoll-in-network-time-protocol-ntp/) - The Network Time Protocol (NTP) can be installed via: sudo apt install ntp The configuration for the NTP server (time synchronization) is located at: /etc/ntp.conf. In Network Time Protocol (NTP), the minpoll and maxpoll settings control the minimum and maximum intervals between polling requests to an NTP server for time synchronization. minpoll 5: This sets The minpoll and maxpoll in Network Time Protocol (NTP)
- [Teaching Kids Programming - Find Cubic Root of an Integer (Brute Force, Binary Search Algorithm) - a^3=54872](https://helloacm.com/teaching-kids-programming-find-cubic-root-of-an-integer-brute-force-binary-search-algorithm-a354872/) - Example: Find the integer cubic root of a^3=54872 First of all, we need to find out how many digits of a, which is easy to find out. "a" is a 2-digit number since 54872 is between 10^3 and 100^3. Also, the digit at One is 8, because 8^3 ends 2 and all other digits to Teaching Kids Programming - Find Cubic Root of an Integer (Brute Force, Binary Search Algorithm) - a^3=54872
- [C++: Access a Non-existent Key in std::map or std::unordered_map](https://helloacm.com/c-access-a-non-existent-key-in-stdmap-or-stdunordered_map/) - Note: I have been asked this question by a Google Recruiter in the early stage of Interview Process e.g. Screening. In C++, when you access a non-existent key in std::map, the behavior depends on how you access it: Using the subscript operator [] If the key does not exist, std::map will automatically insert an element C++: Access a Non-existent Key in std::map or std::unordered_map
- [Teaching Kids Programming - Find the Maximum Achievable Number (Greedy Algorithm, Math)](https://helloacm.com/teaching-kids-programming-find-the-maximum-achievable-number/) - Given two integers, num and t. A number is achievable if it can become equal to num after applying the following operation: Increase or decrease the number by 1, and simultaneously increase or decrease num by 1. Return the maximum achievable number after applying the operation at most t times. Example 1: Input: num = Teaching Kids Programming - Find the Maximum Achievable Number (Greedy Algorithm, Math)
- [List and Vector Comparisions in C++](https://helloacm.com/list-and-vector-comparisions-in-c/) - In C++, both list and vector are container classes provided by the Standard Template Library (STL). However, they differ in several key aspects, such as their underlying data structures, performance characteristics, and use cases. Here's a comparison: Underlying Data Structure vector: Implemented as a dynamic array. It stores elements in a contiguous memory block, similar List and Vector Comparisions in C++
- [The Computers at Early 2000s](https://helloacm.com/the-computers-at-early-2000s/) - In 2003, I took the college entrance exam and then spent the summer in Beijing. In September, I enrolled at the International College at Beijing (ICB) of China Agricultural University. However, I was admitted through a self-funded program since my entrance exam score wasn't high enough to secure a spot at the university. The ICB The Computers at Early 2000s
- [Backtracking Algorithm = Depth First Search + Pruning](https://helloacm.com/backtracking-algorithm-depth-first-search-pruning/) - The statement "Backtracking = DFS + Pruning" is a concise and intuitive description of the backtracking algorithm. To understand this, let's break down the key concepts in this equation. Depth-First Search (DFS) Algorithm DFS is an algorithm for traversing graphs or trees. It starts from the root node and explores as far as possible along Backtracking Algorithm = Depth First Search + Pruning
- [Teaching Kids Programming - Minimum Number of Chairs in the Room (Max Prefix Sum)](https://helloacm.com/teaching-kids-programming-minimum-number-of-chairs-in-the-room-prefix-sum/) - You are given a string s. Simulate events at each second i: If s[i] == 'E', a person enters the waiting room and takes one of the chairs in it. If s[i] == 'L', a person leaves the waiting room, freeing up a chair. Return the minimum number of chairs needed so that a chair Teaching Kids Programming - Minimum Number of Chairs in the Room (Max Prefix Sum)
- [Teaching Kids Programming - Minimum Increment to Make Array Unique (Sorting/Greedy)](https://helloacm.com/teaching-kids-programming-minimum-increment-to-make-array-unique-sorting-greedy/) - You are given an integer array nums. In one move, you can pick an index i where 0
- [The Simplest String Hash Function: djb2 Algorithm and Implementations](https://helloacm.com/the-simplest-string-hash-function-djb2-algorithm-and-implementations/) - #post_excerptprogrammiprogramm The Simplest String Hash Function: djb2 Algorithm and Implementations
- [Hot Weather Causes Intel CPU Throttle and NVidia GPU Crashes on Windows 11 (Blue Screen)](https://helloacm.com/hot-weather-causes-intel-cpu-throttle-and-nvidia-gpu-crashes-on-windows-11-blue-screen/) - My Microsoft Surface Laptop Studio 2 becomes extremely laggy, slow, and nearly unusable in hot weather. Restart didn't help and after a slow reboot, I managed to open the Windows Task Manager and surprised to see that the CPU frequency is throttled. The high CPU temperature causes it to throttle (showing only 0.4 GHz, 0.9 Hot Weather Causes Intel CPU Throttle and NVidia GPU Crashes on Windows 11 (Blue Screen)
- [Teaching Kids Programming - Using Stack to Remove Digits and Characters on the Left](https://helloacm.com/teaching-kids-programming-using-stack-to-remove-digits-and-characters-on-the-left/) - You are given a string s. Your task is to remove all digits by doing this operation repeatedly: Delete the first digit and the closest non-digit character to its left. Return the resulting string after removing all digits. Example 1: Input: s = "abc" Output: "abc" Explanation: There is no digit in the string. Example Teaching Kids Programming - Using Stack to Remove Digits and Characters on the Left
- [Teaching Kids Programming - SQL to Determine the Binary Tree Node Types (Nested Select - Process Elimination)](https://helloacm.com/teaching-kids-programming-sql-to-determine-the-binary-tree-node-types-nested-select-process-elimination/) - Table: Tree +-------------+------+ | Column Name | Type | +-------------+------+ | N | int | | P | int | +-------------+------+ N is the column of unique values for this table. Each row includes N and P, where N represents the value of a node in Binary Tree, and P is the parent of N. Teaching Kids Programming - SQL to Determine the Binary Tree Node Types (Nested Select - Process Elimination)
- [Teaching Kids Programming - SQL to Determine the Binary Tree Node Types (Left/Right Join - Process Elimination)](https://helloacm.com/teaching-kids-programming-sql-to-determine-the-binary-tree-node-types-left-right-join-process-elimination/) - Table: Tree +-------------+------+ | Column Name | Type | +-------------+------+ | N | int | | P | int | +-------------+------+ N is the column of unique values for this table. Each row includes N and P, where N represents the value of a node in Binary Tree, and P is the parent of N. Teaching Kids Programming - SQL to Determine the Binary Tree Node Types (Left/Right Join - Process Elimination)
- [Introduction to Ledger Virtual Crypto Card](https://helloacm.com/ledger-virtual-crypto-card/) - Ledger is one of the famous hardware wallet for Crypto. You can protect your Crypto Assets using the Ledger Hardware Wallet, by storing securing the private keys on the Ledger hardware. Recently, Ledger has been providing the Crypto Card (similar to Coinbase, Crypto.com, Wirex) which is a handy way to convert your Crypto to Fiat Introduction to Ledger Virtual Crypto Card
- [How to Get a Email when System Load Average is High ? (Crontab)](https://helloacm.com/how-to-get-a-email-when-system-load-average-is-high-crontab/) - How to Get a Email when System Load Average is High ? (Crontab) The above runs every 2 minutes, so we need to create this checkload.sh using your favorite text editor. In this post and this, we know we can use several methods to check the system load average for Linux OS. We also know that, similar to this post (get a email when VPS is rebooted), we can setup a crontab job that runs at the given interval. So, we can get a email to
- [How to Get the Last Requests to Apache2 Server?](https://helloacm.com/how-to-get-the-last-requests-to-apache2-server/) - The apache server logs the access requests in /var/log/apache2 so we can analyse this log file to find out the last few requests. The following parses the apache2 server logs, and print the requests line by line. It is based on the BASH commands: awk and tail. #!/bin/bash NUMBER_OF_REQUESTS=50 LOG_FILES_PREFIX=/var/log/apache2/access tail -n $NUMBER_OF_REQUESTS $LOG_FILES_PREFIX* | How to Get the Last Requests to Apache2 Server?
- [Two Windows Tips: Turn Off Delivery Optimization and Tweak Privacy Settings](https://helloacm.com/two-windows-tips-turn-off-delivery-optimization-and-tweak-privacy-settings/) - The following two features when enabled are the performance killer on Windows 11. As we navigate the intricacies of our Windows operating systems, ensuring optimal performance and safeguarding our privacy are top priorities. One way to achieve this is by tweaking a few essential settings, particularly focusing on Delivery Optimization and various privacy settings. This Two Windows Tips: Turn Off Delivery Optimization and Tweak Privacy Settings
- [From Windows 1.0 to Windows 11](https://helloacm.com/from-windows-1-0-to-windows-10/) - From Windows 1.0 to Windows 10 introduction
- [How to Use Windows 10 - Storage Space to Combine Multiple Physical Harddrives?](https://helloacm.com/how-to-use-windows-10-storage-space-to-combine-multiple-physical-harddrives/) - How to Use Windows 10 - Storage Space to Combine Multiple Physical Harddrives? The Windows 10 Storage Space is made for this purpose. You can actually combine multiple physical hard drives into a single virtual, huge disk that can be expanded when space is used out. The storage space can be seen as the software RAID implemented on Windows 10.I have 2 old Hard drives from old PC: 1.5TB and 1TB. They are SATA III HDD (6GBps, 7200 RPM, 64MB Cache). I want to use these drives to store some videos, photos and I don't want to split the files over two hard drives (managing two hard drives separately). Instead, it would be perfect
- [How to Lock out (WorkStation) on Windows?](https://helloacm.com/how-to-lock-out-workstation-on-windows/) - How to Lock out (WorkStation) on Windows? Win key can be found in the modern keyboard, with Win + L shortcut, you can lock your work station instantly. Two keypresses. If you need to be away from your workstation for a while e.g. Lunchtime, meeting etc., you probably will need to lock out your station so that nobody else could touch your work. Ctrl+All+Del and click Lock Ctrl+All+Del is almost available from Win95. When you press Ctrl+Alt+Del, it will give you a list of shortcuts,
- [The Ubuntu Sub System (New Bash Shell) in Windows 10](https://helloacm.com/the-ubuntu-sub-system-new-bash-shell-in-windows-10/) - The Ubuntu Sub System (New Bash Shell) in Windows 10 Click the start and type in &;;Turn Windows Features on/off&;; and hit return. Alternatively, you can go to Control Panel and navigate to Programs, Turn Windows Features On/Off. Both methods should give you this dialog. Windows 10 has recently added a Bash Shell support. It is not just a simple shell. It contains a complete Linux subsystem, which means you can run Linux native code directly on Windows. The Ubuntu Sub System (New Bash Shell) in Windows 10 is a truly Linux kernel (unlike cygwin, which is just a shell).
- [How to Fix a Slow/Incorrect Clock on Windows?](https://helloacm.com/how-to-fix-a-slow-incorrect-clock-on-windows/) - How to Fix a Slow/Incorrect Clock on Windows? I have been using HP Z800 Server for a couple of years and lately, the Windows clock/time is becoming slow. The time shown on reboot and after awaken from sleep or hibernet is incorrect. This might be caused by a few factors. I have been using HP Z800 Server for a couple of years and lately, the Windows clock/time is becoming slow. The time shown on reboot and after awaken from sleep or hibernet is incorrect. This might be caused by a few factors. CMOS Battery Aging The CMOS battery is on the motherboard, which records the
- [Laptop Battery Power Drained But Failed to Sleep on Microsoft Windows Surface Studio Pro](https://helloacm.com/laptop-battery-power-drained-but-failed-to-sleep-on-microsoft-windows-surface-studio-pro/) - I am surprised to find out that my laptop is switched off this morning - normally, Windows has automatic updates and will reboot PC after updates are installed - which is a bit annoying. But clearly, this isn't caused by Windows Updates. And I next found out that the laptop (Microsoft Surface Studio Pro) powered Laptop Battery Power Drained But Failed to Sleep on Microsoft Windows Surface Studio Pro
- [Boost System Performance By: Switching to Best Performance Power Mode at Power & Battery on Windows OS](https://helloacm.com/boost-system-performance-by-switching-to-best-performance-power-mode-at-power-battery-on-windows-os/) - At System -> Power & Battery, there is a Power Mode Setting which is default to "Recommended". You can either choose "Better Performance" or "Best Performance" to Boost Your System immediately. In my case, switching to "Best Performance" immediately takes effects, and I notice that the CPU Fan becomes noiser, with the CPU frequency jumping Boost System Performance By: Switching to Best Performance Power Mode at Power & Battery on Windows OS
- [How to Enable the "God Mode" of Control Panel on Windows?](https://helloacm.com/how-to-enable-the-god-mode-of-control-panel-on-windows/) - Windows Operating System by default has a control panel since early versions of Windows such as Windows 3.x, but it only shows most frequent options and it hides some options. Enable the "God Mode" of Control Pane It is quite simple to enable the "God Mode" which shows everything e.g. all the options in one How to Enable the "God Mode" of Control Panel on Windows?
- [Teaching Kids Programming - Greedy Algorithm to Redistribute Items to Boxes (Knapsack Problem)](https://helloacm.com/teaching-kids-programming-greedy-algorithm-to-redistribute-items-to-boxes-knapsack-problem/) - Apple Redistribution into Boxes You are given an array apple of size n and an array capacity of size m. There are n packs where the ith pack contains apple[i] apples. There are m boxes as well, and the ith box has a capacity of capacity[i] apples. Return the minimum number of boxes you need Teaching Kids Programming - Greedy Algorithm to Redistribute Items to Boxes (Knapsack Problem)
- [Teaching Kids Programming - Redistribute Items to Boxes (Knapsack Problem, Binary Search Algorithm)](https://helloacm.com/teaching-kids-programming-redistribute-items-to-boxes-knapsack-problem-binary-search-algorithm/) - Apple Redistribution into Boxes You are given an array apple of size n and an array capacity of size m. There are n packs where the ith pack contains apple[i] apples. There are m boxes as well, and the ith box has a capacity of capacity[i] apples. Return the minimum number of boxes you need Teaching Kids Programming - Redistribute Items to Boxes (Knapsack Problem, Binary Search Algorithm)
- [Teaching Kids Programming - Introduction to SQL Join Queries (Inner, Left, Right, Full and Cross Joins)](https://helloacm.com/teaching-kids-programming-introduction-to-sql-join-queries-inner-left-right-full-and-cross-joins/) - Introduction to SQL Join Queries (Inner, Left, Right, Full and Cross Joins) Previously: Teaching Kids Programming – Introduction to SQL and the SELECT We can visualize the Different Types of Joins using the Venn Diagrams, for example, the Inner Joins can be seen as finding the common intersecting parts of two tables: In SQL, joins are used to combine rows from two or more tables based on
- [The Experience of On-call (Paging) for Amazon Software Engineers](https://helloacm.com/the-experience-of-on-call-paging-for-amazon-software-engineers/) - From 2020 to 2021, I worked as a Software Development Engineer (SDE) at Amazon (AWS = Amazon Web Services). Some say SDE stands for "Someone Does Everything," and that’s quite accurate. Every SDE at Amazon is responsible for their code from design to testing and must also handle on-call duties periodically. Most Amazon teams consist The Experience of On-call (Paging) for Amazon Software Engineers
- [Earning Passive Income by Staking Coins (USDT etc) on Wirex X-Accounts](https://helloacm.com/earning-passive-income-by-staking-coins-usdt-etc-on-wirex-x-accounts/) - The Wirex is FCA regulated. We can stake Coins (USDT etc) on Wirex X-Accounts and start earning passive incomes. The interests are given out weekly. And you can choose to get interests as WXT coins so that there is 2% extra bonus. For example, By staking USDT, you can get 7% APR to payout as Earning Passive Income by Staking Coins (USDT etc) on Wirex X-Accounts
- [Passive Income of Earning Up To 12% (APR) Interests on Cryptos](https://helloacm.com/passive-income-of-earning-up-to-12-apr-interests-on-cryptos/) - Passive Income of Earning Up To 12% (APR) Interests on Cryptos The interests you can earn from Fiat Money (e.g. USD, British Pounds etc) is so little that you are losing money if you save Fiat Money in bank because of inflation aka Consumer Price Index (which is 7% 2021 in UK). Why not put up in Crypto to Stake and Earn up to 12% (APR)
- [The "defer" keyword in GoLang](https://helloacm.com/the-defer-keyword-in-golang/) - In GoLang, the defer keyword is used to ensure that a function call is performed later in a program's execution, typically for purposes of cleanup. Deferred function calls are executed in last-in-first-out order just before the surrounding function returns. This makes defer especially useful for releasing resources, such as closing a file or unlocking a The "defer" keyword in GoLang
- [High-Frequency Trading (HFT) - Triangular Arbitrage Algorithm](https://helloacm.com/high-frequency-trading-hft-triangular-arbitrage-algorithm/) - High-Frequency Trading (HFT) - Triangular Arbitrage Algorithm High Frequency Trading involves using sophisticated algorithms to execute a large number of orders at very fast speeds. HFTstrategies in crypto aim to capitalize on small price discrepanciesand market inefficiencies, often reacting to market changes inmilliseconds. This type of trading is facilitated by advanced computational technology and can significantly influence liquidityand price volatility in the
- [Teaching Kids Programming - Using Hash Map to Count the Right Triangles in a Binary Matrix](https://helloacm.com/teaching-kids-programming-using-hash-map-to-count-the-right-triangles-in-a-binary-matrix/) - You are given a 2D boolean matrix grid. Return an integer that is the number of right triangles that can be made with the 3 elements of grid such that all of them have a value of 1. Note: A collection of 3 elements of grid is a right triangle if one of its elements Teaching Kids Programming - Using Hash Map to Count the Right Triangles in a Binary Matrix
- [Implement and Test the Go Version of Redis Caching Class](https://helloacm.com/implement-and-test-the-go-version-of-redis-caching-class/) - This post writes a go version of caching layer using redis, wrapps it in a class and provides a usage. Let's create a Go package that provides a caching layer using Redis. We'll use the popular go-redis/redis/v8 package to interact with Redis. We'll define a Cache struct with methods to set and get values, and
- [Teaching Kids Programming - The @cache Function Decorator in Python](https://helloacm.com/teaching-kids-programming-the-cache-function-decorator-in-python/) - Teaching Kids Programming - The @cache Function Decorator in Python Introduction to the Function Decorator in Python In Python, we can add decorate a function by using the @ symbol, following by the decorator. For example: def sample_decorator(func): def wrapper(n): print("Before") ans = func(n) print("After") return wrapper @sample_decorator def say_hello(s): print(f"Hello {s}") Then we call say_hello("World"), then we can see the following output: Before Hello
- [Cambridge Computing History Museum](https://helloacm.com/computing-history-museum/) - Center for Computing History Cambridge Museum Visited Centre of Computing History, addressed below today: Centre for Computing History Rene Court Coldhams Road Cambridge CB1 3EW The Cambridge Museum of Computing History, located in Cambridge, England, is a fascinating institution dedicated to preserving and showcasing the history of computing technology. The museum boasts an impressive collection of vintage computers, software, peripherals, and
- [How to Cache Google QR Image using PHP?](https://helloacm.com/how-to-cache-google-qr-image-using-php/) - How to Cache Google QR Image using PHP? So in this article, we will explore the method to save this QR image locally. The advantage of doing so is that all images are saved to your server, which make sure that the images can be loaded without problem. For example, the google servers are sometimes not accessible i.e. blocked in China, therefore, it is useful to save the QR images to your server (the Google QR URL is visited from your server). In this post, we know the easy way to dynamically obtain a QR image for any given text or URL. So in this article, we will explore the method to save this QR image locally. The advantage of doing so is that all images are saved to your server, which make sure that the images
- [Teaching Kids Programming - Implement the Pairwise Function in Python using the Iterator/Yield](https://helloacm.com/teaching-kids-programming-implement-the-pairwise-function-in-python-using-the-iterator-yield/) - Teaching Kids Programming - Implement the Pairwise Function in Python using the Iterator/Yield Implement the Pairwise Function in Python using the Iterator/Yield The pairwise is from itertools where we can iterate over a iterable (list/array, tuple, set, dictionary, string and etc) in Python, and then returns an iterator to the tuple of the adjacent elements. For example: from itertools import pairwise s = "1234567" for a, b in
- [Three Ways to Deep Clone Objects in JS - How to Clone Variables (The Clone Function) in Javascript?](https://helloacm.com/how-to-clone-variables-the-clone-function-in-javascript/) - How to Clone Variables (The Clone Function) in Javascript? To Deep Copy a variable in Javascript, we have to first check its type - if it is an Array, we then need to clone each element in the array as a new copy and if it is an Object, we have to iterate the keys and assign a cloned copy to the new object. It is primitive type e.g. int, float, we can just return a value - copy by value. How to Deep Clone an Object in Javascript/NodeJs There are three ways to clone an object/variable in Javascript/NodeJs: Recursive, JSON, and Message Channel. Deep Clone Object using Recursive Algorithm To Deep Copy a variable in Javascript, we have to first check its type - if it is an Array, we then need to clone each
- [Rust Cargo Manifest Files Explained: What are the the Cargo.lock and Cargo.toml files?](https://helloacm.com/rust-cargo-manifest-files-explained-what-are-the-the-cargo-lock-and-cargo-toml-files/) - In Rust programming, Cargo is a package manager and build system. It's used for managing your Rust project's dependencies, building your project, and managing its distribution. Cargo relies on two main files to manage these tasks: Cargo.toml and Cargo.lock. What is Cargo.toml? This is the manifest file for your Rust project. It's written in TOML Rust Cargo Manifest Files Explained: What are the the Cargo.lock and Cargo.toml files?
- [Teaching Kids Programming - Count Alternating Subarrays (Dynamic Programming Algorithms)](https://helloacm.com/teaching-kids-programming-count-alternating-subarrays-dynamic-programming-algorithms/) - You are given a binary array nums. We call a subarray alternating if no two adjacent elements in the subarray have the same value. Return the number of alternating subarrays in nums. Example 1: Input: nums = [0,1,1,1] Output: 5 Explanation: The following subarrays are alternating: [0], [1], [1], [1], and [0,1]. Example 2: Input: Teaching Kids Programming - Count Alternating Subarrays (Dynamic Programming Algorithms)
- [Teaching Kids Programming - Latest Time You Can Obtain After Replacing Characters (Decision Tree)](https://helloacm.com/teaching-kids-programming-latest-time-you-can-obtain-after-replacing-characters-decision-tree/) - You are given a string s representing a 12-hour format time where some of the digits (possibly none) are replaced with a "?". 12-hour times are formatted as "HH:MM", where HH is between 00 and 11, and MM is between 00 and 59. The earliest 12-hour time is 00:00, and the latest is 11:59. You Teaching Kids Programming - Latest Time You Can Obtain After Replacing Characters (Decision Tree)
- [Teaching Kids Programming - Split the Numbers into Two Distinct Arrays](https://helloacm.com/teaching-kids-programming-split-the-numbers-into-two-distinct-arrays/) - You are given an integer array nums of even length. You have to split the array into two parts nums1 and nums2 such that: nums1.length == nums2.length == nums.length / 2. nums1 should contain distinct elements. nums2 should also contain distinct elements. Return true if it is possible to split the array, and false otherwise. Teaching Kids Programming - Split the Numbers into Two Distinct Arrays
- [Teaching Kids Programming - Existence of a Substring in a String and Its Reverse](https://helloacm.com/teaching-kids-programming-existence-of-a-substring-in-a-string-and-its-reverse/) - Given a string s, find any substring of length 2 which is also present in the reverse of s. Return true if such a substring exists, and false otherwise. Example 1: Input: s = "leetcode" Output: true Explanation: Substring "ee" is of length 2 which is also present in reverse(s) == "edocteel". Example 2: Input: Teaching Kids Programming - Existence of a Substring in a String and Its Reverse
- [The Simple Steps to Convert Manifest V2 to V3 for Chrome Extensions](https://helloacm.com/the-simple-steps-to-convert-manifest-v2-to-v3-for-chrome-extensions/) - Chrome is deprecating the Manifest v2 From June 2024. And this post will show you the steps to convert your extension with Manifest v2 to Manifest v3. Google has given enough time to migrate to v3. The v3 manifest was first introduced in Dec 2020 (Chrome version M88 Beta), and Google has given developers more The Simple Steps to Convert Manifest V2 to V3 for Chrome Extensions
- [NodeJs Function to Check if a Tron Wallet Address is Valid and Activated](https://helloacm.com/nodejs-function-to-check-if-a-tron-wallet-address-is-valid-and-activated/) - On Tron Blockchain, a wallet could be inactivated as it doesn't appear on the chain yet. The way to activate a Tron Wallet is to send a 1 TRX to it, so that the wallet/transaction is recorded on the Tron Blockchain. How to Check if a String is a Valid TRON wallet? We can use NodeJs Function to Check if a Tron Wallet Address is Valid and Activated
- [Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Iterative Depth First Search Algorithm, Undirected/Unweighted Graph)](https://helloacm.com/teaching-kids-programming-reachable-nodes-with-restrictions-graph-theory-iterative-depth-first-search-algorithm-undirected-unweighted-graph/) - There is an undirected tree with n nodes labeled from 0 to n - 1 and n - 1 edges. You are given a 2D integer array edges of length n - 1 where edges[i] = [ai, bi] indicates that there is an edge between nodes ai and bi in the tree. You are also Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Iterative Depth First Search Algorithm, Undirected/Unweighted Graph)
- [Teaching Kids Programming - Remove Duplicates from Sorted Linked List (Two Pointer Algorithm)](https://helloacm.com/teaching-kids-programming-remove-duplicates-from-sorted-linked-list-two-pointer-algorithm/) - Given the head of a sorted linked list, delete all duplicates such that each element appears only once. Return the linked list sorted as well. Example 1: Input: head = [1,1,2] Output: [1,2] Example 2: Input: head = [1,1,2,3,3] Output: [1,2,3] Constraints: The number of nodes in the list is in the range [0, 300]. Teaching Kids Programming - Remove Duplicates from Sorted Linked List (Two Pointer Algorithm)
- [Bash SHELL, Chess Board Printing](https://helloacm.com/bash-shell-chess-board-printing/) - Shell Script Programming is of lots of fun. The following script prints a chess board with 8x8 squares interleaving black and white. Using simple loops [math] O(n^2) [/math] and some simple math yields the chess board printing. Shell Script Programming is of lots of fun. The following script prints a chess board with 8x8 squares interleaving black and white. Using simple loops [math] O(n^2) [/math] and some simple math yields the chess board printing. #!/bin/sh # https://helloacm.com for i in $(seq 1 8) do for j in $(seq 1 8) do S=$(((i+j)%2))
- [Linux BASH shell - Echo This if you get angry](https://helloacm.com/linux-bash-shell-echo-this-if-you-get-angry/) - So start sending this to someone that pisses you off. This will print something like this (a middle-finger gesture makes it quit clear) Remember, Linux is a fun place to work. Keep calm. echo ' ..XXX. .XXX.. .XXXXY.TXXXX. XXXXXYXTXXXXX .VXXVYXTVXXX. `.TYXTXYXTV . ` ,YVTXYYV ., `...XXXXX`.., .`...XXX...,. ..` V ,.' | tr '.\`, VYTX' ' ()__() ' So start sending this to someone that pisses you off. This will print something like this (a middle-finger gesture makes it
- [A Bash Process Controller to Start, Stop and Restart an Daemon Program](https://helloacm.com/a-bash-process-controller-to-start-stop-and-restart-an-daemon-program/) - BASH daemon controller to start, stop and restart a long running process In Linux, we have service process controller which can be used to start, stop and restart a particular registered service. For example: $ sudo service mysql stop $ sudo service mysql start $ sudo service mysql restart We can use BASH script to customize a process controller, where we can pass the third paramter any
- [BASH Script to Compute the Average Ping to a Domain](https://helloacm.com/bash-script-to-compute-the-average-ping-to-a-domain/) - BASH Script to Compute the Average Ping to a Domain The following BASH script uses the ping command and computes the average PING to a domain via awk text processing. #!/bin/bash if [[ -z $1 ]]; then echo Usage: $0 domain exit 1 fi ping -c 3 $1 | head -4 | tail -3 | awk 'BEGIN{a=0;c=0} {a+=substr($8,6);c+=1} END{print(a)/c;}' The ping command we can specify
- [A Simple BASH Function/Script to Run a Command in Background](https://helloacm.com/a-simple-bash-function-script-to-run-a-command-in-background/) - A Simple BASH Function/Script to Run a Command in Background If you connect to a SSH - when the window is closed, all running programs in the current session will be terminated. One way to solve this is to run the command in screen session. The following uses "nohup" to define a function bkr() and you can run the script easily to start a problem
- [BASH Function to Install Docker](https://helloacm.com/bash-function-to-install-docker/) - BASH Function to Install Docker The following BASH script/function tries to install the latest version of the Docker via the get.docker.com site, if you have already installed docker, it will try to update it - however you should re-login to docker and re-connect to SSH afterwards. #!/bin/bash install_docker() { sudo apt update # curl/git used by docker sudo apt install
- [Full Permutation Algorithm Implementation in BASH](https://helloacm.com/full-permutation-algorithm-implementation-in-bash/) - Swap Two Characters in BASH In BASH, we can use "${#string}" to get the length of a string. And in a function, we use "local" keyword to declare local variables. And strings are immuntable in BASH, and thus we can use the following function to swap two characters in a string: function swap() { local Full Permutation Algorithm Implementation in BASH
- [BASH Function to Check if sudo Available](https://helloacm.com/bash-function-to-check-if-sudo-available/) - BASH Function to Check if sudo Available sudo is the command to allow normal users perform some escalated operations. We can use the following BASH function to check to see if the sudo command is available. This is done via the which command which searches the command in the $PATH path. # 0 - ok # 1 - nok is_sudo_available() { local
- [BASH Function to Escape Parameters Argument](https://helloacm.com/bash-function-to-escape-parameters-argument/) - BASH Function to Escape Parameters Argument We can use the following BASH function escape to escape the parameter strings and put them one by one. For example: #!/bin/bash function escape () { for i do printf %s\n "$i" | sed "s/'/'\\''/g;1s/^/'/;\$s/\$/' \\/" ; done } escape $* Using the prinftf with sed to escape the strings: Example: $ ./escape 1234 a
- [BASH Function to Get Memory Information via AWK](https://helloacm.com/bash-function-to-get-memory-information-via-awk/) - BASH Function to Get Memory Information via AWK On Linux, we can cat the file "/proc/meminfo" to display memory related information: $ cat /proc/memoinfo MemTotal: 32939372 kB MemFree: 31155452 kB MemAvailable: 31269760 kB Buffers: 242964 kB Cached: 200756 kB SwapCached: 10472 kB Active: 853936 kB Inactive: 630008 kB Active(anon): 569276 kB Inactive(anon): 467960 kB Active(file): 284660 kB Inactive(file): 162048 kB Unevictable: 0 kB
- [BASH Function to Compute the Greatest Common Divisor and Least Common Multiples](https://helloacm.com/bash-function-to-compute-the-greatest-common-divisor-and-least-common-multiples/) - BASH Function to Compute the Greatest Common Divisor and Least Common Multiples We can compute the Greatest Common Divisor (GCD) using Iterative Divide/Remainder Method. The following is the GCD implementation in BASH Programming: #!/bin/bash function gcd() { local x=$1 local y=$2 while [ $y -gt 0 ]; do local t=$x x=$y y=$((t%y)) done echo $x } And the Least Common Multiples can be computed as the multipication
- [How to Extract a Domain Name from a Full URL in BASH?](https://helloacm.com/how-to-extract-a-domain-name-from-a-full-url-in-bash/) - To extract the domain name from a full URL in a Bash script, you can use parameter expansion, sed, awk, or grep. Each method has its own benefits, and which one you use may depend on your specific circumstances or personal preference. Below are examples of each method: Using Parameter Expansion to Extract a Domain How to Extract a Domain Name from a Full URL in BASH?
- [Simple Bash Function to Repeat a Command N times with Retries](https://helloacm.com/simple-bash-function-to-repeat-a-command-n-times-with-retries/) - Simple Bash Function to Repeat a Command N times with Retries Sometimes we want to repeat a command on Linux, and we can use the following BASH function to repeat a command for a number of times: function repeat() { COUNT=$2 if [[ -z "$COUNT" ]]; then COUNT=100 fi for i in $(seq 1 $COUNT); do echo Counter=$i: CMD=$1 if ! $1; then echo "Error! $i"
- [A Simple Atbash Cipher Implementation](https://helloacm.com/a-simple-atbash-cipher/) - A Simple Atbash Cipher Iterating each character (lowercase) in the string, and update it to its reverse in the alphabet. O(N) time complexity and O(1) space. You are given a lowercase alphabet string text. Return a new string where every character in text is mapped to its reverse in the alphabet, so that a becomes z, b becomes y, c becomes x, and so on. Example 1 Input text = "abcdef" Output "zyxwvu" Understanding the Cipher The Atbash cipher is a
- [Three Interesting/Fun BASH Commands](https://helloacm.com/three-interesting-fun-bash-commands/) - This post shows you 3 interesting/fun BASH commands: BASH Console Tetris Game You can now play tetris game in Bash console. You would need to install this via: $ sudo apt install bastet # or sudo yum install bastet ## start the Tetris Game $ bastet Control the movement of Tetris blocks by the direction Three Interesting/Fun BASH Commands
- [One Interesting Linux Command (Steam Locomotive in BASH)](https://helloacm.com/one-interesting-linux-command/) - Linux is a open-source free project, which involves many excellent developers from all over the world. They contribute to this excellent operation system. They are creative and make this OS enjoyable. Steam Locomotive in BASH
- [Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Union Find, Disjoint Set, Undirected/Unweighted Graph)](https://helloacm.com/teaching-kids-programming-reachable-nodes-with-restrictions-graph-theory-union-find-disjoint-set-undirected-unweighted-graph/) - There is an undirected tree with n nodes labeled from 0 to n - 1 and n - 1 edges. You are given a 2D integer array edges of length n - 1 where edges[i] = [ai, bi] indicates that there is an edge between nodes ai and bi in the tree. You are also Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Union Find, Disjoint Set, Undirected/Unweighted Graph)
- [Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Breadth First Search Algorithm, Undirected/Unweighted Graph)](https://helloacm.com/teaching-kids-programming-reachable-nodes-with-restrictions-graph-theory-breadth-first-search-algorithm-undirected-unweighted-graph/) - There is an undirected tree with n nodes labeled from 0 to n - 1 and n - 1 edges. You are given a 2D integer array edges of length n - 1 where edges[i] = [ai, bi] indicates that there is an edge between nodes ai and bi in the tree. You are also Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Breadth First Search Algorithm, Undirected/Unweighted Graph)
- [Overclocking ARM CPU of Raspberry PI 4 and 400 with Temperature Cooling Measures](https://helloacm.com/overclocking-raspberry-pi-4-and-400-with-temperature-cooling/) - This is to overclock the Raspberry PI ARM CPU to 2147MHz and GPU Frequency to 750MHz. `over_voltage` controls the power votage, and make sure you have a decent power supply - preferably the official USB Power Supply. Raspberry PI 4 comes by default CPU Clock 1.5G and Raspberry PI 400 has a slightly powerful CPU 1.8G. However, they are not powerful enough if you are going to use it as a daily PC especially if you e.g. watch Youtube with 1080p is kinda slow. CPU and GPU Overclocking for Raspberry PI 4
- [BASH Script to Monitor the CPU Frequency and Temperature on Raspberry PI](https://helloacm.com/bash-script-to-monitor-the-cpu-frequency-and-temperature-on-raspberry-pi/) - BASH Script to Monitor the CPU Frequency and Temperature on Raspberry PI We can write a BASH Script to print out the current CPU frequency and temperature on Raspberry PI. We can write a BASH Script to print out the current CPU frequency and temperature on Raspberry PI. #pi@raspberrypi:~ $ cat ./cpu_freq.sh #!/bin/bash temp=`head -n 1 /sys/class/thermal/thermal_zone0/temp | xargs -I{} awk "BEGIN {printf \"%.2f\n\", {}/1000}"` echo $((`cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq`/1000)) MHz, $temp degrees Then, we can simpily run the following BASH command to monitor the CPU frequency
- [BASH Script to Monitor the CPU Frequency and Temperature on Raspberry PI](https://helloacm.com/bash-script-to-monitor-the-cpu-frequency-and-temperature-on-raspberry-pi/) - BASH Script to Monitor the CPU Frequency and Temperature on Raspberry PI We can write a BASH Script to print out the current CPU frequency and temperature on Raspberry PI. We can write a BASH Script to print out the current CPU frequency and temperature on Raspberry PI. #pi@raspberrypi:~ $ cat ./cpu_freq.sh #!/bin/bash temp=`head -n 1 /sys/class/thermal/thermal_zone0/temp | xargs -I{} awk "BEGIN {printf \"%.2f\n\", {}/1000}"` echo $((`cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq`/1000)) MHz, $temp degrees Then, we can simpily run the following BASH command to monitor the CPU frequency
- [NUC: All-In-One Raspberry PI 400 Kit - Personal Computer Kit with Raspbian OS](https://helloacm.com/all-in-one-raspberry-pi-400-kit-personal-computer-kit-with-raspbian-os/) - All-In-One Raspberry PI 400 Kit - Personal Computer Kit with Raspbian OS You can carry the keyboard to your office and simply plugin to the monitor. This is a very lightweight PC and especially with Raspbian OS - The Raspberry PI 400 Kit is a all-in-one personal computer keyboard that comes with a pre-installed 16GB Micro SD card (Raspbian OS). It costs around 100 GBP and comes with the following: Power Supply All-in-one Keyboard with Raspberry PI Model 4 - 4 GB RAM A beginner book to Raspberry PI A 16GB Micro SD
- [How to Monitor the CPU Temperature of Raspberry PI using Python Script?](https://helloacm.com/how-to-monitor-the-cpu-temperature-of-raspberry-pi-using-python-script/) - How to Monitor the CPU Temperature of Raspberry PI using Python Script? It would be great to monitor the temperature in case it gets too hot. The working temperature is less than 80 degree for raspberry PI. Raspberry PI does not have any fans - although you can either install cooling chips or CPU/Central Processing Unit fans. It would be great to monitor the temperature in case it gets too hot. The working temperature is less than 80 degree for raspberry PI. With a CPU fan, I managed to keep the CPU
- [Use PHP Script to Monitor Temperature and Uptime for Raspberry PI in the Browser](https://helloacm.com/use-php-script-to-monitor-temperature-and-uptime-for-raspberry-pi-in-the-browser/) - The Raspberry PI (so far, three models, A, B and B Plus) is a credit-card size tiny full functional PC that runs Linux (e.g. Raspbian). I have introduced the script to measure the temperature of the board. Here is an article to show you different ways to reduce the temperature of Raspberry PI by using coolers, fans. Under linux, you can use uptime to see how long the server has been running. Suppose, you have installed the apache2 server, you can have a PHP page that displays these information by using shell_exec() or exec() function that executes these commands. The Raspberry PI (so far, three models, A, B and B Plus) is a credit-card size tiny full functional PC that runs Linux (e.g. Raspbian). I have introduced the script to measure the temperature of the board. Here is an article to show you different ways to reduce the temperature of Raspberry PI by using
- [NUC Hardware Review: Raspberry PI B Plus Model](https://helloacm.com/review-raspberry-pi-b-plus-model/) - Review: Raspberry PI B Plus Model What I like most of the B+ model is that it has more USB ports (4 instead of 2 in B model), so for me, I can plug in the USB mouse, USB keyboard, the USB Wifi Adapter and one USB external Hard Drive, without any USB hubs. Today, I got the new Raspberry Pi B+ from Newark. It is Raspberry B Plus model, which is a enhanced/improved version of the Raspberry PI B model. The royal mail this time did their job properly, so I got this cute little box the next day. Here it is what it looks like from the
- [Different Approaches to Reduce the CPU Temperature of Raspberry PI](https://helloacm.com/different-approaches-to-reduce-the-cpu-temperature-of-raspberry-pi/) - So here are my experiments/findings (I have two Raspberry PI by the way), each temperature is measured after at least 30 minutes running/uptime. 1. The USB cool fan works best, with the case on, it drops at least 10 degrees from 52 to 41. 2. In [here], the BASH command/script is used to measure the temperature of the Raspberry PI. In [here], I described using a USB external cooler fan (for laptop) to drop the temperature of Raspberry PI down (e.g. 10 degrees) in just ten minutes. As we know, there are no inbuilt cooler system (fan) on Raspberry PI,
- [Test SD Card Speed on Raspberry PI](https://helloacm.com/test-sd-card-speed-on-raspberry-pi/) - Raspberry PI has a SD card slot. It boots from the SD card, which can be supported up to 32GB. (For bigger size, the SD card has to be partitioned). The SD card is virtually the 'hard drive' for Raspberry PI, Raspberry PI has a SD card slot. It boots from the SD card, which can be supported up to 32GB. (For bigger size, the SD card has to be partitioned). The SD card is virtually the 'hard drive' for Raspberry PI, so we want it as fast as it can be. So practically how fast
- [Remote Desktop Connection for Raspberry PI (xrdp)](https://helloacm.com/remote-desktop-connection-for-raspberry-pi-xrdp/) - Remote Desktop Connection for Raspberry PI (xrdp)\r\nOn Linux, we can usually run startx to start the desktop. On Linux, we can usually run startx to start the desktop. However, this is not supported over SSH because it requires the X-server (Graphics) to run and the SSH connections are usually text-based only. If you try to run startx remotely using SSH, you will get messages like this. However, the process seems to hang
- [Using a external USB cooler fan to drop temperature of Raspberry PI (Model B) from 51 degrees downto 40 degrees for just ten minutes](https://helloacm.com/using-a-external-usb-cooler-fan-to-drop-temperature-of-raspberry-pi-model-b-from-51-degrees-downto-40-degrees-for-just-ten-minutes/) - Using a external USB cooler fan to drop temperature of Raspberry PI (Model B) from 51 degrees downto 40 degrees for just ten minutes In this post, we show an easy script to view the current temperature of the CPU in Raspberry PI. The Raspberry PI doesn't have a CPU fan or cooler by default, and the normal working temperature is 49 to 51 degrees. I put the Raspberry PI in a plastic case and put it under the
- [How to Get the CPU Temperature on Raspberry PI using BASH Script?](https://helloacm.com/cpu-temperature-on-raspberry-pi/) - How to Get the CPU Temperature on Raspberry PI using BASH Script? Raspberry PI is a credit-card size fully functional PC. You can install Linux on it. The CPU is ARM 700MHz for both A and B models. Raspberry PI is a credit-card size fully functional PC. You can install Linux on it. The CPU is ARM 700MHz for both A and B models. However, it is so tiny that it doesn't come with a CPU fan on the board. It doesn't have a power button either; the Raspberry PI uses a micro
- [Visiting The Raspberry Shop in Cambridge UK](https://helloacm.com/visiting-the-raspberry-shop-in-cambridge-uk/) - In the center of Cambridge, England, there is a Raspberry Pi store inside The Grand Arcade shopping center. This is one of only two offline Raspberry Pi stores in the UK (official website), the other Raspberry Pi shop is in Leeds. The address of the Raspberry Pi store in Cambridge is: SU46, The Grand Arcade, Visiting The Raspberry Shop in Cambridge UK
- [Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Recursive Depth First Search Algorithm, Undirected/Unweighted Graph)](https://helloacm.com/teaching-kids-programming-reachable-nodes-with-restrictions-graph-theory-depth-first-search-algorithm/) - There is an undirected tree with n nodes labeled from 0 to n - 1 and n - 1 edges. You are given a 2D integer array edges of length n - 1 where edges[i] = [ai, bi] indicates that there is an edge between nodes ai and bi in the tree. You are also Teaching Kids Programming - Reachable Nodes With Restrictions (Graph Theory, Recursive Depth First Search Algorithm) Undirected Graph, Unweighted Graph
- [Teaching Kids Programming - Least Number of Unique Integers after K Removals](https://helloacm.com/teaching-kids-programming-least-number-of-unique-integers-after-k-removals/) - Given an array of integers arr and an integer k. Find the least number of unique integers after removing exactly k elements. Example 1: Input: arr = [5,5,4], k = 1 Output: 1 Explanation: Remove the single 4, only 5 is left. Example 2: Input: arr = [4,3,1,1,3,3,2], k = 3 Output: 2 Explanation: Remove Teaching Kids Programming - Least Number of Unique Integers after K Removals
- [Teaching Kids Programming - Paint Fences (No 3 Consecutive Same Colours) - Top Down Dynamic Programming Algorithm (Recursion + Memoization)](https://helloacm.com/teaching-kids-programming-paint-fences-no-3-consecutive-same-colours-top-down-dynamic-programming-algorithm-recursion-memoization/) - You are painting a fence of n posts with k different colors. You must paint the posts following these rules: Every post must be painted exactly one color. There cannot be three or more consecutive posts with the same color. Given the two integers n and k, return the number of ways you can paint Teaching Kids Programming - Paint Fences (No 3 Consecutive Colours) - Top Down Dynamic Programming Algorithm (Recursion + Memoization)
- [Teaching Kids Programming - Paint Fences (No 3 Consecutive Same Colours) - Bottom Up Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-paint-fences-no-3-consecutive-same-colours-bottom-up-dynamic-programming-algorithm/) - You are painting a fence of n posts with k different colors. You must paint the posts following these rules: Every post must be painted exactly one color. There cannot be three or more consecutive posts with the same color. Given the two integers n and k, return the number of ways you can paint Teaching Kids Programming - Paint Fences (No 3 Consecutive Same Colours) - Bottom Up Dynamic Programming Algorithm
- [Compute the Number of Ways to Paint the House via Dynamic Programming Algorithm](https://helloacm.com/compute-the-number-of-ways-to-paint-the-house-via-dynamic-programming-algorithm/) - Compute the Number of Ways to Paint the House via Dynamic Programming Algorithm. In this post, we will discuss using the same Dynamic Programming algorithm to compute the number of different ways to paint the house subject to one criteria: no same colours for 3 consecutive houses in a row. There is a fence with n posts, each post can be painted with one of the k colors. You have to paint all the posts such that no more than two adjacent fence posts have the same color. Return the total number of ways you can paint the fence. Note: n and k are non-negative
- [How Rich is Justin Sun? (Net Worth)](https://helloacm.com/how-rich-is-justin-sun-net-worth/) - Asking ChatGPT-3.5: Justin Sun' net worth, can you give a guess/estimate? As an AI language model, I don't have real-time information and my knowledge is up to date only until September 2021. As of that time, Justin Sun was a prominent figure in the cryptocurrency space and the founder of TRON (TRX) blockchain platform. At How Rich is Justin Sun? (Net Worth)
- [Teaching Kids Programming - N-Repeated Element in Size 2N Array (Pigeonhole Principle)](https://helloacm.com/teaching-kids-programming-n-repeated-element-in-size-2n-array-pigeonhole-principle/) - You are given an integer array nums with the following properties: nums.length == 2 * n. nums contains n + 1 unique elements. Exactly one element of nums is repeated n times. Return the element that is repeated n times. Example 1: Input: nums = [1,2,3,3] Output: 3 Example 2: Input: nums = [2,1,2,5,3,2] Output: Teaching Kids Programming - N-Repeated Element in Size 2N Array (Pigeonhole Principle)
- [Teaching Kids Programming - N-Repeated Element in Size 2N Array (Random Algorithm)](https://helloacm.com/teaching-kids-programming-n-repeated-element-in-size-2n-array-random-algorithm/) - You are given an integer array nums with the following properties: nums.length == 2 * n. nums contains n + 1 unique elements. Exactly one element of nums is repeated n times. Return the element that is repeated n times. Example 1: Input: nums = [1,2,3,3] Output: 3 Example 2: Input: nums = [2,1,2,5,3,2] Output: Teaching Kids Programming - N-Repeated Element in Size 2N Array (Random Algorithm)
- [How to Check the Balance of a Ethereum Wallet Address?](https://helloacm.com/how-to-check-the-balance-of-a-ethereum-wallet-address/) - You can retrieve the balance of an Ethereum address using libraries like web3.js or ethers.js. Check the Balance of a Ethereum Wallet Address Using web3.js First, ensure you have the web3 library installed: npm install web3 Here's the code. The following is based on Infura which has a free plan API, rate limit is 10 How to Check the Balance of a Ethereum Wallet Address?
- [Teaching Kids Programming - N-Repeated Element in Size 2N Array (Math)](https://helloacm.com/teaching-kids-programming-n-repeated-element-in-size-2n-array-math/) - You are given an integer array nums with the following properties: nums.length == 2 * n. nums contains n + 1 unique elements. Exactly one element of nums is repeated n times. Return the element that is repeated n times. Example 1: Input: nums = [1,2,3,3] Output: 3 Example 2: Input: nums = [2,1,2,5,3,2] Output: Teaching Kids Programming - N-Repeated Element in Size 2N Array (Math)
- [Teaching Kids Programming - N-Repeated Element in Size 2N Array (Sorting)](https://helloacm.com/teaching-kids-programming-n-repeated-element-in-size-2n-array-sorting/) - Teaching Kids Programming - N-Repeated Element in Size 2N Array (Sorting) You are given an integer array nums with the following properties: nums.length == 2 * n. nums contains n + 1 unique elements. Exactly one element of nums is repeated n times. Return the element that is repeated n times. Example 1: Input: nums = [1,2,3,3] Output: 3 Example 2: Input: nums = [2,1,2,5,3,2] Output:
- [How to Get the Gas Price and Gas Fee on Ethereum Blockchain?](https://helloacm.com/how-to-get-the-gas-price-and-gas-fee-on-ethereum-blockchain/) - On Ethereum Blockchain, we need to pay the miner Gas Fee to perform some operations, for example, invoking Smart Contract, or simply transfering ETH. The Gas Fee equals to 21000 multiplied by the Gas Price, which is measured in unit of Gwei. You can pay a higher gas fee to allow the operations be handled How to Get the Gas Price and Gas Fee on Ethereum Blockchain?
- [Algorithms: How to Find N-Repeated Element in Size 2N Array?](https://helloacm.com/how-to-find-n-repeated-element-in-size-2n-array/) - How to Find N-Repeated Element in Size 2N Array? If we randomly pick two different indices, there is a high chance that the numbers on them will be the same - the majority of the numbers are duplicate (half). In a array A of size 2N, there are N+1 unique elements, and exactly one of these elements is repeated N times. Return the element repeated N times. Example 1: Input: [1,2,3,3] Output: 3 Example 2: Input: [2,1,2,5,3,2] Output: 2 Example 3: Input: [5,1,5,2,5,3,5,4] Output: 5 Note: 4
- [Teaching Kids Programming - N-Repeated Element in Size 2N Array (Hash Map/Set)](https://helloacm.com/teaching-kids-programming-n-repeated-element-in-size-2n-array-hash-map-set/) - You are given an integer array nums with the following properties: nums.length == 2 * n. nums contains n + 1 unique elements. Exactly one element of nums is repeated n times. Return the element that is repeated n times. Example 1: Input: nums = [1,2,3,3] Output: 3 Example 2: Input: nums = [2,1,2,5,3,2] Output: N-Repeated Element in Size 2N Array (Hash Map/Set)
- [Teaching Kids Programming - Count Out of Boundary Path via Top Down Dynamic Programming Algorithm (Recursion with Memoization)](https://helloacm.com/teaching-kids-programming-count-out-of-boundary-path-via-top-down-dynamic-programming-algorithm-recursion-with-memoization/) - There is an m x n grid with a ball. The ball is initially at the position [startRow, startColumn]. You are allowed to move the ball to one of the four adjacent cells in the grid (possibly out of the grid crossing the grid boundary). You can apply at most maxMove moves to the ball. Teaching Kids Programming - Count Out of Boundary Path via Top Down Dynamic Programming Algorithm (Recursion with Memoization)
- [Teaching Kids Programming - Remove Duplicates from Sorted Linked List (Using Hash Set)](https://helloacm.com/teaching-kids-programming-remove-duplicates-from-sorted-linked-list-using-hash-set/) - Given the head of a sorted linked list, delete all duplicates such that each element appears only once. Return the linked list sorted as well. Example 1: Input: head = [1,1,2] Output: [1,2] Example 2: Input: head = [1,1,2,3,3] Output: [1,2,3] Constraints: The number of nodes in the list is in the range [0, 300]. Teaching Kids Programming - Remove Duplicates from Sorted Linked List (Using Hash Set)
- [Python Debugging: Get Current Executed Function Name and Print Traceback](https://helloacm.com/python-debugging-get-current-executed-function-name-and-print-traceback/) - In Python, we can fail a test like this: def fail_the_test(error_msg): print(error_msg) sys.stdout.flush() sys.stdout.close() # this kills the process and make it return a non-zero code os.kill(os.getpid(), signal.SIGKILL) At this point, we can collect more information to help debugging. How to Get the Name of the Current Running Function in Python? To get the name Python Debugging: Get Current Executed Function Name and Print Traceback
- [Implement a K-th Element for the Set in C++](https://helloacm.com/implement-a-k-th-element-for-the-set-in-c/) - A set in C++ (aka std::set) is a ordered set (based on a Red-Black tree) while the unordered_set is based on a Hash Map. Implement a K-eth element for C++ Set in O(K) Implementing a function to find the k-th element in a set in C++ can be done efficiently using iterators. A set in Implement a K-th Element for the Set in C++ Policy-Based Data Structures (PBDS)
- [Teaching Kids Programming - Check if Bitwise OR Has Trailing Zeros (Binary)](https://helloacm.com/teaching-kids-programming-check-if-bitwise-or-has-trailing-zeros-binary/) - You are given an array of positive integers nums. You have to check if it is possible to select two or more elements in the array such that the bitwise OR of the selected elements has at least one trailing zero in its binary representation. For example, the binary representation of 5, which is "101", Teaching Kids Programming - Check if Bitwise OR Has Trailing Zeros (Binary)
- [Teaching Kids Programming - Largest Substring Between Two Equal Characters (Brute Force, Find/Index)](https://helloacm.com/teaching-kids-programming-largest-substring-between-two-equal-characters-brute-force-find-index/) - Given a string s, return the length of the longest substring between two equal characters, excluding the two characters. If there is no such substring return -1. A substring is a contiguous sequence of characters within a string. Example 1: Input: s = "aa" Output: 0 Explanation: The optimal substring here is an empty substring Teaching Kids Programming - Largest Substring Between Two Equal Characters (Brute Force, Find/Index)
- [Teaching Kids Programming - Largest Substring Between Two Equal Characters (Hash Map)](https://helloacm.com/teaching-kids-programming-largest-substring-between-two-equal-characters-hash-map/) - Given a string s, return the length of the longest substring between two equal characters, excluding the two characters. If there is no such substring return -1. A substring is a contiguous sequence of characters within a string. Example 1: Input: s = "aa" Output: 0 Explanation: The optimal substring here is an empty substring Teaching Kids Programming - Largest Substring Between Two Equal Characters (Hash Map)
- [Compute the Largest Substring Between Two Equal Characters using Hash Table](https://helloacm.com/compute-the-largest-substring-between-two-equal-characters-using-hash-table/) - Compute the Largest Substring Between Two Equal Characters using Hash Table Then, if we see the same character we know the substring length. And sure we can compute the maximum substring. Given a string s, return the length of the longest substring between two equal characters, excluding the two characters. If there is no such substring return -1. A substring is a contiguous sequence of characters within a string. Example 1: Input: s = "aa" Output: 0 Explanation: The optimal substring here is an empty substring
- [Teaching Kids Programming - Linear Algebra: Using Matrix to Solve Equations of X and Y](https://helloacm.com/teaching-kids-programming-linear-algebra-using-matrix-to-solve-equations-of-x-and-y/) - Given the following two equations: [math] 2x + 3y = 13 [/math] [math] 3x - 2y = 0 [/math] We can work on the X or Y in one equation and then substitue it in another equation. For example: from Equation 1, we know [math] x = (13 - 3y) / 2 [/math] and we Teaching Kids Programming - Linear Algebra: Using Matrix to Solve Equations of X and Y
- [Teaching Kids Programming - Pseudo-Palindromic Paths in a Binary Tree (Breadth First Search Algorithm, Iterative Preorder/Reversed Preorder)](https://helloacm.com/teaching-kids-programming-pseudo-palindromic-paths-in-a-binary-tree-breadth-first-search-algorithm-iterative-preorder-reversed-preorder/) - Given a binary tree where node values are digits from 1 to 9. A path in the binary tree is said to be pseudo-palindromic if at least one permutation of the node values in the path is a palindrome. Return the number of pseudo-palindromic paths going from the root node to leaf nodes. Example 1: Teaching Kids Programming - Pseudo-Palindromic Paths in a Binary Tree (Breadth First Search Algorithm, Iterative Preorder/Reversed Preorder)
- [Teaching Kids Programming - Pseudo-Palindromic Paths in a Binary Tree (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-pseudo-palindromic-paths-in-a-binary-tree-recursive-depth-first-search-algorithm/) - Given a binary tree where node values are digits from 1 to 9. A path in the binary tree is said to be pseudo-palindromic if at least one permutation of the node values in the path is a palindrome. Return the number of pseudo-palindromic paths going from the root node to leaf nodes. Example 1: Teaching Kids Programming - Pseudo-Palindromic Paths in a Binary Tree (Recursive Depth First Search Algorithm)
- [How to Offload Your Server by Using CloudFlare - Cache Everything?](https://helloacm.com/how-to-offload-your-server-by-using-cloudflare-cache-everything/) - Cloudflare by default only caches the static resources, such as images, audios, documents. If your site does not have dynamic contents or is updated less frequently, then you can also cache everything (including the dynamic PHP pages), which certainly offloads your origin server. Cloudflare by default only caches the static resources, such as images, audios, documents. If your site does not have dynamic contents or is updated less frequently (e.g. if you don't care updating guests comments in real time), then you can also cache everything (including the dynamic PHP pages), which certainly offloads your origin server. The
- [Posting SQL code on bbForum Triggers Security Rules by CloudFlare](https://helloacm.com/posting-sql-code-on-bbforum-triggers-security-rules-by-cloudflare/) - Posting SQL code on bbForum Triggers Security Rules by CloudFlare You can analyze why this is being blocked and what rules it is hitting on the WAF.
- [How to Clear CloudFlare Caches of Multiple URLs using PHP Script with CloudFlare API?](https://helloacm.com/how-to-clear-cloudflare-caches-of-multiple-urls-using-php-script/) - How to Clear CloudFlare Caches of Multiple URLs using PHP Script with CloudFlare API? Using CloudFlare APIs, we can do this in a script and this is beneficial if you have usually many many URLs to purge if e.g. a post is published, a feature is updated. The CloudFlare allows you to purge manually up to 30 URLs at a time if you navigate Caching Tab. You could also, purge all URLs which is known as "Purge Everything" but this isn't recommended because that the cache miss if multiple requests hit at the same time, which could overload your server. Using CloudFlare
- [Cloudflare Offers Dedicated SSL Certificates](https://helloacm.com/cloudflare-offers-dedicated-ssl-certificates/) - Cloudflare Offers Dedicated SSL Certificates Dedicated SSL Certificates will have to be under the same zone. You can not add host names from different domains to the same Dedicated SSL Certificate. As we know, the Free Universal SSL is available for all CloudFlare accounts - including the Free accounts. However, the Universal SSL does have limitations: they are only supported on modern OS and browsers e.g. they won't work on XP and IE6. The paid accounts remove this limitation but your SSL is still shared with
- [The PHP Page Rule Checker of CloudFlare](https://helloacm.com/the-php-page-rule-checker-of-cloudflare/) - The PHP Page Rule Checker of CloudFlare The PHP Page Rule Checker of CloudFlare is implemented in PHP, based on the CloudFlare API. To use this, you need to find out the APP_KEY from your cloudflare account dashboard. The Page Rule is a very powerful tool in CloudFlare, you can define up to 3 page rules in Free Plan, and Up to 20 in Pro Plan. The additional page rules are only $5 per 5 rules. The page rules take priority over the global settings, and for each URL, only 1 page rule
- [Does CloudFlare Cache 403 and 503 By Default?](https://helloacm.com/does-cloudflare-cache-403-and-503-by-default/) - Does CloudFlare Cache 403 and 503 By Default? To cache more, create a Page Rule set to cache everything on the desired URL (if your webserver returns a 404 when requesting this URL, we will still cache this result for 5mn only, though). To avoid caching on a URL, create a rule to bypass the cache. I have a few APIs and I want to let CloudFlare cache the results. However, I don't want any bots to access the API so that I have a check like this: if (isBot()) { return "No Bots"; } // the rest of APIs If the bot visits the API URL first, the Cloudflare will
- [CloudFlare Internet Summit - Recaps](https://helloacm.com/cloudflare-internet-summit-recaps/) - CloudFlare Internet Summit - Recaps I was invited to the CloudFlare summit this year with a free ticket (worth of 500-600 pounds) and the following is the recaps. Cloudflare is a great company that aims to provide a better internet. I spent $60 monthly (Pro Subscription) because I just love Cloudflare's products. I was invited to the CloudFlare summit this year with a free ticket (worth of 500-600 pounds) and the following is the recaps. The summit was held in the Tobacco Dock
- [Set Up Website Health Checks (Canaries) using CloudFlare](https://helloacm.com/set-up-website-health-checks-canaries-using-cloudflare/) - Set Up Website Health Checks (Canaries) using CloudFlare In Software Testing, the Canaries is a piece of code that continuous sends requests to check the health of the service. It is like back in Coral mining, the canries are sent to the mine and if something goes wrong, the canaries will stop tweeting. In Software Testing, the Canaries is a piece of code that continuous sends requests to check the health of the service. It is like back in Coral mining, the canries are sent to the mine and if something goes wrong, the canaries will stop tweeting. Using CloudFlare Pro, it is very easy to set up
- [Using CloudFlare Worker Serverless Technology to Deploy a Load Balancer (RPC Node) for Steem Blockchain](https://helloacm.com/using-cloudflare-worker-serverless-technology-to-deploy-a-load-balancer-rpc-node-for-steem-blockchain/) - Using CloudFlare Worker Serverless Technology to Deploy a Load Balancer (RPC Node) for Steem Blockchain A little Insight on the Steem Load Balancing RPC Node A few days ago, I launched the "Load Balancing" Node: https://steem.senior.workers.dev/ It is a Javascript code that runs on the CloudFlare edges (more than 200 network centers). The network is the computing. When requests are received, the Node will send a 'ping' request to a few nodes, and whoever returns first win the request. See
- [How to Fix CloudFlare Error 1101 (Worker threw exception)?](https://helloacm.com/how-to-fix-cloudflare-error-1101-worker-threw-exception/) - How to Fix CloudFlare Error 1101 (Worker threw exception)? This usually happens, when the script throws a Javascript exception, and can be handled by Try-Catch. After the update to the Load Balancer Node https://steem.justyy.workers.dev a few days ago, I started to notice the `scriptThrewException` error scriptThrewException Number of Errors 6 Number of Requests 6 Number of Sub Requests 42 CPU Time P50 (ms) 2.11 CPU Time P90 (ms) 3.37 CPU Time P99 (ms) 3.8 CPU Time P99.9 (ms) 3.85 After
- [Tutorial: How to Set Up a API Load Balancer by Using CloudFlare Worker?](https://helloacm.com/tutorial-how-to-set-up-a-api-load-balancer-by-using-cloudflare-worker/) - Tutorial: How to Set Up a API Load Balancer by Using CloudFlare Worker? Once we know which (fastest) server should serve the current request. Then we need to forward the request to the orign server and once we have the result - forward it back to the users. The following are two functions to forward the GET and POST requests respectively - you might want to add other requests such as PUT, PATCH,DELETE etc. The CloudFlare Worker is a Serverless Service (similar to Amazon Lambda, Google Function) that we can use to deploy functions in the edge network. The serverless is the future - with the biggest advantages: no need to maintain the servers (no devop costs) - and highly scalable, as the serverless functions can be automatically scaled
- [Cloudflare Worker Unexpected High Usage of API Requests - How to Avoid Surprising Billing?](https://helloacm.com/cloudflare-unexpected-high-usage-of-api-requests-how-to-avoid-surprising-billing/) - I was a bit surprised to see the billing spikes this month for CloudFlare Worker. As one of the "Free" API has a huge number of requests. Everything comes at a price. The CloudFlare worker has the following pricing plans: I contacted the CloudFlare's Technical/Billing Team, and they provide me the details of Usage: And Cloudflare Worker Unexpected High Usage of API Requests - How to Avoid Surprising Billing?
- [A Simple Rate Limiter for CloudFlare Workers (Serverless API) based on KV Stores](https://helloacm.com/a-simple-rate-limiter-for-cloudflare-workers-serverless-api-based-on-kv-stores/) - CloudFlare Workers is a Serverless Technology. We can use it to host the Serverless APIs. However, no matter what the status code or content is returned from the cloudflare worker, it will be counted as one request because the worker function is hit. Therefore, it is necessary to rate limit the CloudFlare Worker APIs in A Simple Rate Limiter for CloudFlare Workers (Serverless API) based on KV Stores The following Javascript code checks the number of the requests per IP address for any 60 second window, and returns 429 Too Many Requests if the number exceeds the threshold MAX_REQUESTS.
- [How to Transfer Domain From Namesilo to CloudFlare Registra?](https://helloacm.com/how-to-transfer-domain-from-namesilo-to-cloudflare-registra/) - I have 15 domains so far, and only 1 currently managed by CloudFlare Registra. Recently I decide to migrate all domains to CloudFlare registra because of cost. At CloudFlare, it seems the cheapest fee to renew a .COM domain ($9.15 per year) while in Namesilo the fee is around $10.5 - so 15 domains that How to Transfer Domain From Namesilo to CloudFlare Registra?
- [CloudFlare: Change Security Level Value Programmatically for Multiple Domains via PHP/Python/Bash Script](https://helloacm.com/cloudflare-change-security-level-value-programmatically-for-multiple-domains-via-php-python-bash-script/) - I have 15 domains, and they are all at CloudFlare. I would like to update the security level to all domains at once, programmatically. The security level could be one of these: "Essentially off", "low", "medium", "high" and "I'm under attack!". Luckily, cloudflare provides API, and we can do this via the following PHP Script. CloudFlare: Change Security Level Value Programmatically for Multiple Domains via PHP/Python/Bash Script
- [Teaching Kids Programming - Another Birthday Candles Problem (Binary Search and Brute Force / Linear Search)](https://helloacm.com/teaching-kids-programming-another-birthday-candles-problem/) - Another Birthday Candles Problem Unlike the Original Birthday Candles Problem described here: Teaching Kids Programming – The Birthday Candles Problem (Three Algorithms), the number of candles blown for year N is the number of digits of integer N. For example, from year 1 to year 9, a candle is blown for each year, and on Teaching Kids Programming - Another Birthday Candles Problem
- [Algorithms to Compute the Sum of the Number of Digits for First N Natural Integers](https://helloacm.com/algorithms-to-compute-the-sum-of-the-number-of-digits-for-first-n-natural-integers/) - Given a integer n, find all the sum of the number of the digits up to n, for example, given n=5, we return 5, because 1,2,3,4,5 are all 1 digits, given n=10, we return 11, because 1,2,3,4,5,6,7,8,9 are one digit and 10 is 2 digits. Write a python code. Find the Number of Digits for Algorithms to Compute the Sum of the Number of Digits for First N Natural Integers
- [Teaching Kids Programming - The Birthday Candles Problem (Three Algorithms)](https://helloacm.com/teaching-kids-programming-the-birthday-candles-problem-three-algorithms/) - The Birthday Candles Problem If a person blows 1 candle at Age 1, 2 candles at Age 2, 3 candles at Age 3, then what is the year of the birthday if he/she has blown total 231 candles. This can be solved using three algorithms/approaches. The Bruteforce Algorithm We can try brute forcing (perform a Teaching Kids Programming - The Birthday Candles Problem (Three Algorithms)
- [Adding Two Short Code Functions to Wordpress: Top Posts By Number of Comments and Top Posts by Ratings](https://helloacm.com/adding-two-short-code-functions-to-wordpress-top-posts-by-number-of-comments-and-top-posts-by-ratings/) - The wordpress shortcode is a great feature that we can easily add via the add_shortcode function. This post introduces two shortcode functions in Wordpress to get the top 10 posts by the comment count (show_top_posts_by_comments) or by the ratings (show_top_posts_by_rating) Wordpress shortcode: Top Posts By Number of Comments The shortcode show_top_posts_by_comments requires four parameters: "year" Adding Two Short Code Functions to Wordpress: Top Posts By Number of Comments and Top Posts by Ratings
- [How to Add a ShortCode to Include a PHP File in Wordpress?](https://helloacm.com/how-to-add-a-shortcode-to-include-a-php-file-in-wordpress/) - include php in the wordpress post/page In Wordpress, you can add a short code that allows you to include a PHP File at your post. First, add the following function in your child theme's functions.php template: function sc_include($atts, $inc) { return get_include_contents($inc); } function get_include_contents($filename) { ob_start(); // you can change the directory $filename = get_theme_root().'/'.get_template().'/'.trim($filename); if (is_file($filename)) { @include($filename); }
- [Using the Regular Expression to Replace External Links in Wordpress for SEO purposes](https://helloacm.com/using-the-regular-expression-to-replace-external-links-in-wordpress-for-seo-purposes/) - Using the Regular Expression to Replace External Links in Wordpress for SEO purposes Let's say we want to put a REL=NOFOLLOW on all external links in your wordpress posts/pages, we can add a filter to parse the content using the regular expression replace function e.g. preg_replace_callback. Let's say we want to put a REL=NOFOLLOW on all external links in your wordpress posts/pages, we can add a filter to parse the content using the regular expression replace function e.g. preg_replace_callback. add_filter('the_content','add_utm_string',999); function add_utm_string($content){ $content = preg_replace_callback('~href\s*\=\s*[\'"](.*)[\'"]~i', function ($matches) { $home_url = parse_url(home_url())['host']; if (stripos($matches[1], $home_url) === false) { return 'href="'.$matches[1] . '?utm_source='.
- [5 Things to Look For in a WordPress Hosting Provider](https://helloacm.com/5-things-to-look-for-in-a-wordpress-hosting-provider/) - If you need a quality WordPress hosting provider that will satisfy your needs, check out this article to learn what to look for and find the right one! Web hosting is the backbone of the website world. Without it, no website can exist on the Internet. Web hosting serves as a virtual home for your website, allowing it to have its own place under the online sun. It is also a very lucrative business that can make you a lot of money. If
- [Adding a Short Code Function to Include Any PHP or HTML Files in the Wordpress Posts or Pages](https://helloacm.com/adding-a-short-code-function-to-include-any-php-or-html-files-in-the-wordpress-posts-or-pages/) - Sometimes, we want to include the PHP or HTML or external files in a wordpress post or page, then we can use the following PHP code to add a shortcode function in Wordpress: function include_php_in_wordpress($atts) { extract(shortcode_atts( array( 'src' => '' ), $atts)); if ($src!= '') { if (is_file($src)) { return @file_get_contents($src); } else { Adding a Short Code Function to Include Any PHP or HTML Files in the Wordpress Posts or Pages
- [How to Get Popular Posts of the Year using SQL? (2015)](https://helloacm.com/how-to-get-popular-posts-of-the-year-using-sql-2015/) - How to Get Popular Posts of the Year using SQL? At the end of each year, as a blogger, you might be interested in knowing the list of top popular posts of the year. Luckily, this can be easily obtained by running the following SQL statements (e.g. in PHPMyAdmin) You can add short codes in Wordpress to get top posts easily: Adding Two Short Code
- [How to List the Most-Voted Posts in a Year using SQL?](https://helloacm.com/how-to-list-the-most-voted-posts-in-a-year-using-sql/) - How to List the Most-Voted Posts in a Year using SQL? Of course, you could modify the above both SQL queries so that it gives 12 posts i.e. one best for each month. You just need to group by the month like this: In this post, we learn how to use SQL list the most popular posts (according to the number of comments for each posts). This posts, we will get some basic statistics for the posts in 2016 and also, we we will learn the top 10 posts sorted by the votings. You can add short codes
- [How to Check Balances of a Bitcoin (BTC) Wallet Address via NodeJs or Python?](https://helloacm.com/how-to-check-balances-of-a-bitcoin-btc-wallet-address-via-nodejs-or-python/) - Checking the Balances of a BTC/bitcoin wallet address can be done in two ways: Querying a Node, or Querying a Third party API. Querying a Node requires running your own node, or some other existing nodes. Setting up a node could be complex and there is running cost incurred. Accessing some existing node may require How to Check Balances of a Bitcoin (BTC) Wallet Address via NodeJs or Python?
- [Schema 3.0 - Don't let google penalize your slow loading website](https://helloacm.com/schema-2-0-dont-let-google-penalize-your-slow-loading-website/) - Schema 3.0 - Don't let google penalize your slow loading website We know how much you value your site's speed and how you give preference to a theme that makes your site load fast. It isn't just a fad either. For years now, Google has been pretty open about how much impact your site's speed has on search engine rankings. Google wants their users to have
- [Fix Insecure FeedBurner Form for Schema Theme](https://helloacm.com/fix-insecure-feedburner-form-for-schema-theme/) - Fix Insure FeedBurner Form for Schema Theme The chrome will show a security error for any secure page with an insecure I have started using Wordpress paid theme Schema for my several blogs. In general, it is a nice theme, fast and SEO friendly. However, since my blogs are all on HTTPS, then I noticed that if I had a widget of (Google Feedburner) in the sitebar. The chrome will show a security error for any
- [Using the Paid Wordpress Scheme - Schema](https://helloacm.com/using-the-paid-wordpress-scheme-schema/) - Using the Paid Wordpress Scheme - Schema Of course, the entire theme options provides so many choices. You can customize the styles, the posts layout etc. The money is well spent! Does this theme attract more page views? Updates are coming..
- [Teaching Kids Programming - Count Unique Length-3 Palindromic Subsequences](https://helloacm.com/teaching-kids-programming-count-unique-length-3-palindromic-subsequences/) - Given a string s, return the number of unique palindromes of length three that are a subsequence of s. Note that even if there are multiple ways to obtain the same subsequence, it is still only counted once. A palindrome is a string that reads the same forwards and backwards. A subsequence of a string Teaching Kids Programming - Count Unique Length-3 Palindromic Subsequences
- [Simply Explained with Python: Normalized Mean Absolute Error (NMAE)](https://helloacm.com/simply-explained-with-python-normalized-mean-absolute-error-nmae/) - Normalized Mean Absolute Error (NMAE) is a statistical measure used to assess the accuracy of a prediction model. It's a variation of the Mean Absolute Error (MAE), which is a common measure for regression models. Here's how each term breaks down: Introduction to Mean Absolute Error (MAE) This is the average of the absolute errors Simply Explained with Python: Normalized Mean Absolute Error (NMAE)
- [Differences Between Web2 and Web3 Domains](https://helloacm.com/differences-between-web2-and-web3-domains/) - Web2 or Web2.0 Domains are those we mostly talk about nowadays. For example, when you type in "https://helloacm.com" in the browser, the "helloacm.com" is the Web2.0 domain, which is controlled/registered by a (few) centralized organizations. On the other hand, Web3 or Web3.0 domains are based on blockchain technology, similar to NFT (Non-fungible Token). Web3 domains Differences Between Web2 and Web3 Domains
- [Teaching Kids Programming - Algorithms to Find the Unique Vertex of Zero Indegree in a Directed Acyclic Graph](https://helloacm.com/teaching-kids-programming-algorithms-to-find-the-unique-vertex-of-zero-indegree-in-a-directed-acyclic-graph/) - There are n teams numbered from 0 to n - 1 in a tournament; each team is also a node in a DAG. You are given the integer n and a 0-indexed 2D integer array edges of length m representing the DAG, where edges[i] = [ui, vi] indicates that there is a directed edge from Teaching Kids Programming - Algorithms to Find the Unique Vertex of Zero Indegree in a Directed Acyclic Graph
- [Teaching Kids Programming - Algorithms to Find the Vertex of Zero Indegree in a Directed Acyclic Graph](https://helloacm.com/teaching-kids-programming-find-the-vertex-of-zero-indegree-in-a-directed-acyclic-graph/) - 2923. Find Champion I There are n teams numbered from 0 to n - 1 in a tournament. Given a 0-indexed 2D boolean matrix grid of size n * n. For all i, j that 0
- [Teaching Kids Programming - Algorithms to Find the Lexicographically Smallest Palindrome](https://helloacm.com/teaching-kids-programming-algorithms-to-find-the-lexicographically-smallest-palindrome/) - You are given a string s consisting of lowercase English letters, and you are allowed to perform operations on it. In one operation, you can replace a character in s with another lowercase English letter. Your task is to make s a palindrome with the minimum number of operations possible. If there are multiple palindromes Teaching Kids Programming - Algorithms to Find the Lexicographically Smallest Palindrome
- [Blockchain Hardfork vs Soft-fork](https://helloacm.com/blockchain-hardfork-vs-soft-fork/) - In blockchain technology, both hard forks and soft forks are methods of updating or upgrading the protocol of a blockchain. However, they differ significantly in how they achieve these changes and the impact they have on the network. Hard Fork A hard fork is a significant change to the blockchain's protocol that makes previously invalid Blockchain Hardfork vs Soft-fork
- [dApps Scalability Challenges (Distributed Apps)](https://helloacm.com/dapps-scalability-challenges-distributed-apps/) - What are the current scalability issues of building a dApp on a blockchain? I want to stimulate a social media dApp that has millions of users and millions online at the same time. I want to know before hand what are the scalability issues I could be dealing with in this stage of dApps? dApps dApps Scalability Challenges (Distributed Apps)
- [Integrating ChatGPT Prompt AI to STEEM blockchain](https://helloacm.com/integrating-chatgpt-prompt-ai-to-steem-blockchain/) - Type "!ask" following a space + the question on the STEEM blockchain. Currently the ChatGPT will listen to the comments (but not the posts). It takes roughly 30 to 60 seconds for a Reply to appear on the blockchain. How does this work? The Design One process (or application) is listening to the comments posted Integrating ChatGPT Prompt AI to STEEM blockchain Artificial General Intelligence, AGI
- [Blockchain and Web3.0 Interview Questions](https://helloacm.com/blockchain-and-web3-0-interview-questions/) - Here are 37 Top Asked Interview Questions for Blockchain and Web3.0. What is web 1.0? Web 1.0: This is the first generation of the World Wide Web, also known as the "read-only" web. It allowed users to search for information and read it, but there was limited interactivity and users couldn't contribute content or easily Blockchain and Web3.0 Interview Questions
- [How to Fix "Returned Error: replacement transaction underpriced" when Sending the ETH on Ethereum Blockchain?](https://helloacm.com/how-to-fix-returned-error-replacement-transaction-underpriced-when-sending-the-eth-on-ethereum-blockchain/) - The error "Returned error: replacement transaction underpriced" typically occurs in the context of Ethereum Blockchain transactions, especially when you're trying to replace or overwrite a transaction that's already pending in the Ethereum network (mempool). This error message is common in scenarios where users are attempting to speed up a transaction, usually because the original transaction How to Fix "Returned Error: replacement transaction underpriced" when Sending the ETH on Ethereum Blockchain?
- [Introduction to Shielded Contracts on Blockchain (EVM, TVM)](https://helloacm.com/introduction-to-shielded-contracts-on-blockchain-evm-tvm/) - Introduction to Shielded Contracts A shielded contract refers to a contract that provides enhanced privacy features. It allows the details of transactions, such as sender, receiver, and amount, to be encrypted. The use of shielded contracts can be found in various blockchain platforms, and their main objective is to offer privacy to the users. Tron, Introduction to Shielded Contracts on Blockchain (EVM, TVM)
- [Layer 1 and Layer2 in Blockchain Technology](https://helloacm.com/layer-1-and-layer2-in-blockchain-technology/) - Layer 1 and Layer 2 are terms used to describe different levels or layers within blockchain technology, each with its unique role and characteristics in maintaining and scaling a blockchain network. For example, on Steem Blockchain, the Layer 1 is the steemd, the consensus software that is run by witnesses (aka miners), and the Layer Layer 1 and Layer2 in Blockchain Technology
- [Teaching Kids Programming - Introduction to Two's Complement (Storing Negative Integers)](https://helloacm.com/teaching-kids-programming-introduction-to-twos-complement-storing-negative-numbers/) - Two's complement is a mathematical method used in computers to represent positive and negative integers. It's the most common method for representing signed integers on computers. Two's Complement Here's how it works: Positive Numbers For positive numbers (and zero), two's complement representation is the same as the regular binary representation. For example, in an 8-bit Teaching Kids Programming - Introduction to Two's Complement (Storing Negative Integers)
- [Teaching Kids Programming - Last Moment Before All Ants Fall Out of a Plank](https://helloacm.com/teaching-kids-programming-last-moment-before-all-ants-fall-out-of-a-plank/) - We have a wooden plank of the length n units. Some ants are walking on the plank, each ant moves with a speed of 1 unit per second. Some of the ants move to the left, the other move to the right. When two ants moving in two different directions meet at some point, they Teaching Kids Programming - Last Moment Before All Ants Fall Out of a Plank
- [How to Match Word Boundary using SQL?](https://helloacm.com/sql-statement-to-search-for-word-boundary/) - In SQL, sometimes, you want to search a string field that contains a key, but as a whole word. So for example, if you search for 'word', you do not want 'wordword' to be included in the result. Suppose, we have the following data in the MySQL table test.
- [Teaching Kids Programming - Algorithm to Generate a String With Characters That Have Odd Counts](https://helloacm.com/teaching-kids-programming-generate-a-string-with-characters-that-have-odd-counts/) - Given an integer n, return a string with n characters such that each character in such string occurs an odd number of times. The returned string must contain only lowercase English letters. If there are multiples valid strings, return any of them. Example 1: Input: n = 4 Output: "pppz" Explanation: "pppz" is a valid Teaching Kids Programming - Generate a String With Characters That Have Odd Counts
- [Introduction to 0/1 Knapsack Problem](https://helloacm.com/01-knapsack-problem/) - In reality, many applications can be represented as Knapsack problems. The knapsack problem is one of the most classic combinatics mathematics problems. The knapscak problems are of serveral types. It can be further classified into 0/1 Knapsack problem, multi-dimensional knapsack problem, fraction knapsack etc depending upon the rules to put valuables in knapsacks. The 0/1 Introduction to 0/1 Knapsack Problem In reality, many applications can be represented as Knapsack problems. The knapsack problem is one of the most classic combinatics mathematics problems. The knapscak problems are of serveral types. It can be further classified into 0/1 Knapsack problem, multi-dimensional knapsack problem, fraction knapsack etc depending upon the rules to put valuables in knapsacks.\r\n\r\nThe 0/1 Knapsack problem is the most basic form and it can be easily solved using Dynamic Programming, currently known the best solution to this type of problem
- [Introduction to Complete Knapsack Problem](https://helloacm.com/complete-knapsack-problem/) - Introduction to Complete Knapsack Problem In [here], the basic 0/1 knapsack is discussed. For each item, you can choose to put or not to put into the knapsack. Therefore, for the number of items, there are only two options: 0 or 1. In Complete Knapsack Problem, for each item, you can put as many times as you want. Therefore, if
- [Dynamic Programming Algorithm to Solve 0-1 Knapsack Problem](https://helloacm.com/dynamic-programming-algorithm-to-solve-0-1-knapsack-problem/) - Dynamic Programming Algorithm to Solve 0-1 Knapsack Problem We can use dp[i][j] to represent the maximum value we can get for the first i-items with capacity j in the knapsack. As each item we have two choices, either choose or skip, then we have the following Dynamic Programming equation: You are given two lists of integers weights and values which have the same length and an integer capacity. weights[i] and values[i] represent the weight and value of the ith item. Given that you can take at most capacity weights, and that you can only take at most one copy of each item, return the
- [Teaching Kids Programming - Brick Layout (Unlimited Knapsack) via Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-brick-layout-unlimited-knapsack-via-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Brick Layout (Unlimited Knapsack) via Top Down Dynamic Programming Algorithm You are given a list of integers bricks and integers width and height. Each bricks[i] represents a 1 x bricks[i] size brick. Return the number of ways to lay the bricks such that we get full layout of bricks with width width and height height. Bricks can be reused but can only be laid horizontally.
- [Teaching Kids Programming - Brick Layout (Unlimited Knapsack) via Bottom Up Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-brick-layout-unlimited-knapsack-via-bottom-up-dynamic-programming-algorithm/) - Teaching Kids Programming - Brick Layout (Unlimited Knapsack) via Bottom Up Dynamic Programming Algorithm You are given a list of integers bricks and integers width and height. Each bricks[i] represents a 1 x bricks[i] size brick. Return the number of ways to lay the bricks such that we get full layout of bricks with width width and height height. Bricks can be reused but can only be laid horizontally.
- [Teaching Kids Programming - Max Profit of Rod Cutting (Unbounded Knapsack) via Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-max-profit-of-rod-cutting-unbounded-knapsack-via-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Max Profit of Rod Cutting (Unbounded Knapsack) via Top Down Dynamic Programming Algorithm You are given a list of integers prices where prices[i] represents the price to sell a rod of size i + 1, and an integer n which represents the current size of the rod. Given you can cut the rod into any number of different sizes, return the maximum profit that can be earned. Constraints
- [Teaching Kids Programming - Max Profit of Rod Cutting (Unbounded Knapsack) via Bottom Up Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-max-profit-of-rod-cutting-unbounded-knapsack-via-bottom-up-dynamic-programming-algorithm/) - Teaching Kids Programming - Max Profit of Rod Cutting (Unbounded Knapsack) via Bottom Up Dynamic Programming Algorithm You are given a list of integers prices where prices[i] represents the price to sell a rod of size i + 1, and an integer n which represents the current size of the rod. Given you can cut the rod into any number of different sizes, return the maximum profit that can be earned. Constraints
- [Teaching Kids Programming - Multiple Strange Coin Flips/Toss Top Down Dynamic Programming Algorithm (Knapsack Variant)](https://helloacm.com/teaching-kids-programming-multiple-strange-coin-flips-toss-top-down-dynamic-programming-algorithm-knapsack-variant/) - Teaching Kids Programming - Multiple Strange Coin Flips/Toss Top Down Dynamic Programming Algorithm (Knapsack Variant) You are given a list of floats chances and an integer target. Each element chances[i] represents the probability that the ith coin lands heads on a flip. Given that we throw each coin once, return the probability that exactly target number of them land heads. Constraints n ≤ 1,000 where n is the length of
- [Teaching Kids Programming - Multiple Strange Coin Flips/Toss Bottom Up Dynamic Programming Algorithm (Knapsack Variant)](https://helloacm.com/teaching-kids-programming-multiple-strange-coin-flips-toss-bottom-up-dynamic-programming-algorithm-knapsack-variant/) - Teaching Kids Programming - Multiple Strange Coin Flips/Toss Bottom Up Dynamic Programming Algorithm (Knapsack Variant) You are given a list of floats chances and an integer target. Each element chances[i] represents the probability that the ith coin lands heads on a flip. Given that we throw each coin once, return the probability that exactly target number of them land heads. Constraints n ≤ 1,000 where n is the length of
- [Teaching Kids Programming - 0/1 Knapsack Problem via Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-0-1-knapsack-problem-via-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - 0/1 Knapsack Problem via Top Down Dynamic Programming Algorithm You are given two lists of integers weights and values which have the same length and an integer capacity. weights[i] and values[i] represent the weight and value of the ith item. Given that you can take at most capacity weights, and that you can only take at most one copy of each item, return the
- [Teaching Kids Programming - Using Bottom Up Dynamic Programming Algorithm to Solve 0/1 Knapsack Problem](https://helloacm.com/teaching-kids-programming-0-1-knapsack-problem-via-bottom-up-dynamic-programming-algorithm/) - Teaching Kids Programming - 0/1 Knapsack Problem via Bottom Up Dynamic Programming Algorithm You are given two lists of integers weights and values which have the same length and an integer capacity. weights[i] and values[i] represent the weight and value of the ith item. Given that you can take at most capacity weights, and that you can only take at most one copy of each item, return the
- [Teaching Kids Programming - 0/1 Knapsack Space Optimised Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-0-1-knapsack-space-optimised-dynamic-programming-algorithm/) - Teaching Kids Programming - 0/1 Knapsack Optimal Dynamic Programming Algorithm (Compress Space) You are given two lists of integers weights and values which have the same length and an integer capacity. weights[i] and values[i] represent the weight and value of the ith item. Given that you can take at most capacity weights, and that you can only take at most one copy of each item, return the
- [Partition Equal Subset Sum Algorithms using DFS, Top-Down and Bottom-up DP](https://helloacm.com/partition-equal-subset-sum-algorithms-using-dfs-top-down-and-bottom-up-dp/) - Partition Equal Subset Sum Algorithms using DFS, Top-Down and Bottom-up DP We know that if the total sum of all numbers in the array is odd, we can\'t parition such array into two equal subset. We can just using Depth First Search (Bruteforce without optimisation), Given a non-empty array nums containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal. Example 1: Input: nums = [1,5,11,5] Output: true Explanation: The array can be partitioned as [1, 5, 5] and [11]. Example 2: Input: nums =
- [Facing Heads Probabilties of Tossing Strange Coins using Dynamic Programming Algorithm](https://helloacm.com/facing-heads-probabilties-of-tossing-strange-coins-using-dynamic-programming-algorithm/) - Facing Heads Probabilties of Tossing Strange Coins using Dynamic Programming Algorithm When we toss the last coin, we can check if the number of the heads up equal to the target, if yes, we accumulates the probability. We can speed up DFS by abandoning the branches where when we have tossed more than heads we wanted or the current probability is zero. You have some coins. The i-th coin has a probability prob[i] of facing heads when tossed. Return the probability that the number of coins facing heads equals target if you toss every coin exactly once. Example 1: Input: prob = [0.4], target = 1 Output: 0.40000 Example 2: Input: prob = [0.5,0.5,0.5,0.5,0.5], target = 0
- [Using BackTracking Algorithm to Find the Combination Integer Sum](https://helloacm.com/using-backtracking-algorithm-to-find-the-combination-integer-sum/) - Using BackTracking Algorithm to Find the Combination Integer Sum The BackTracking algorithm is one of the DFS algorithm where the unnecesary branches of the tree are avoided whenever we can, if we know that a certain path will never reach a solution. Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), find all unique combinations in candidates where the candidate numbers sums to target. The same repeated number may be chosen from candidates unlimited number of times. Note: All numbers (including target) will be positive integers. The solution set must not contain
- [Algorithms Series: 0/1 BackPack - Dynamic Programming and BackTracking](https://helloacm.com/algorithms-series-0-1-backpack-dynamic-programming-and-backtracking/) - Algorithms Series: 0/1 BackPack - Dynamic Programming and BackTracking Given n items with size A[i] (i from 0 to n - 1), an integer m denotes the size of a backpack. How full you can fill this backpack? Put this mathematically, you are trying to: max(sum(j[i] * A[i])) subject to: j[i] = {0, 1} and sum(j[i] * A[i])
- [Teaching Kids Programming - Combination Sum Up to Target (Unique Numbers) by Dynamic Programming Algorithms](https://helloacm.com/teaching-kids-programming-combination-sum-up-to-target-unique-numbers-by-dynamic-programming-algorithms/) - Dynamic Programming (Bottom-up and Top-Down) algorithms to compute the number of possible combinations that sum up to target (unique numbers) Given an array of distinct integers nums and a target integer target, return the number of possible combinations that add up to target. The answer is guaranteed to fit in a 32-bit integer. Example 1: Input: nums = [1,2,3], target = 4 Output: 7 Explanation: The possible combination ways are: (1, 1, 1, 1) (1,
- [Classic Knapsack Problem Variant: Coin Change via Dynamic Programming and Breadth First Search Algorithm](https://helloacm.com/classic-knapsack-problem-variant-coin-change-via-dynamic-programming-and-breadth-first-search-algorithm/) - Classic Knapsack Problem Variant: Coin Change via Dynamic Programming and Breadth First Search Algorithm The shortest, smallest or fastest keywords hint that we can solve the problem using the Breadth First Search algorithm. We start by push the root node that is the amount. Then, for each coin values (or item weight), we push the remaining value/weight to the queue. At any time, if the remaining balance equals to the item value, we simply return its depth as it will the shortest path from the root. You are given coins of different denominations and a total amount of money amount. Write a function to compute the fewest number of coins that you need to make up that amount. If that amount of money cannot be made up by any combination of the coins, return -1. Example 1: Input: coins = [1,
- [Classic Unlimited Knapsack Problem Variant: Coin Change via Dynamic Programming and Depth First Search Algorithm](https://helloacm.com/classic-unlimited-knapsack-problem-variant-coin-change-via-dynamic-programming-and-depth-first-search-algorithm/) - Classic Unlimited Knapsack Problem Variant: Coin Change via Dynamic Programming and Depth First Search Algorithm As such, the intermediate results are remembered in the F array, and the complexity is O(NM) where N is the number of different items e.g. coins, and the M is the amount e.g. the total capacity for the knapsack. The below C++ uses O(M) additional space. You are given coins of different denominations and a total amount of money. Write a function to compute the number of combinations that make up that amount. You may assume that you have infinite number of each kind of coin. Example 1: Input: amount = 5, coins = [1, 2, 5] Output: 4 Explanation: there
- [Dynamic Programming Algorithm to Solve the Poly Knapsack (Ubounded) Problem](https://helloacm.com/dynamic-programming-algorithm-to-solve-the-poly-knapsack-ubounded-problem/) - Ubounded knapsack problem solved by Dynamic Programming (Python and C++) You are given two lists of integers weights and values which have the same length and an integer capacity. weights[i] and values[i] represent the weight and value of the ith item. Given that you can take at most capacity weights, and that you can take any number of copies for each item, return the maximum
- [Count Multiset Sum (Knapsacks) by Recursive BackTracking Algorithm](https://helloacm.com/count-multiset-sum-knapsacks-by-recursive-backtracking-algorithm/) - count multiset sum by using backtracking algorithm Given a list of unique positive integers nums and a positive integer k, return the number of unique combinations that sum up to k. You may reuse numbers when creating combinations. Constraints n ≤ 25 where n is the length of nums 1 ≤ nums[i] ≤ 250 for all 0 ≤ i < n 1
- [Count Multiset Sum (Knapsacks) by Dynamic Programming Algorithm](https://helloacm.com/count-multiset-sum-knapsacks-by-dynamic-programming-algorithm/) - dynamic programming algorithm to count multiset sum Given a list of unique positive integers nums and a positive integer k, return the number of unique combinations that sum up to k. You may reuse numbers when creating combinations. Constraints n ≤ 25 where n is the length of nums 1 ≤ nums[i] ≤ 250 for all 0 ≤ i < n 1
- [Teaching Kids Programming - 0/1 Knapsack: Length of the Longest Subsequence That Sums to Target (Recursion+Memoization=Top Down Dynamic Programming)](https://helloacm.com/teaching-kids-programming-length-of-the-longest-subsequence-that-sums-to-target-recursionmemoizationtop-down-dynamic-programming/) - You are given a 0-indexed array of integers nums, and an integer target. Return the length of the longest subsequence of nums that sums up to target. If no such subsequence exists, return -1. A subsequence is an array that can be derived from another array by deleting some or no elements without changing the Teaching Kids Programming - 0/1 Knapsack: Length of the Longest Subsequence That Sums to Target (Recursion+Memoization=Top Down Dynamic Programming)
- [Teaching Kids Programming - Second Highest Distinct Record using SQL and Python](https://helloacm.com/teaching-kids-programming-second-highest-distinct-record-using-sql/) - Table: Employee +-------------+------+ | Column Name | Type | +-------------+------+ | id | int | | salary | int | +-------------+------+ id is the primary key column for this table. Each row of this table contains information about the salary of an employee. Write an SQL query to report the second highest salary from the Teaching Kids Programming - Second Highest Distinct Record using SQL
- [Teaching Kids Programming - Introduction to SQL and the SELECT](https://helloacm.com/teaching-kids-programming-introduction-to-sql-and-the-select/) - Teaching Kids Programming - Introduction to SQL and the SELECT The SQL (Structured Query Language) is a programming language that is used to interact with the Database. The SELECT statement is used to retrieve (and filter) data from Database (which contains the Organised data). A Database con contain many tables. A table in a RDMS (Relational Database Management System) contains rows and columns. The columns
- [Teaching Kids Programming - Most Common SQL keywords (Select, Update, Insert, Delete)](https://helloacm.com/teaching-kids-programming-most-common-sql-keywords-select-update-insert-delete/) - Here are a few SQL keywords we learn this lessons. These are most common SQL syntax. SQL (Structured Query Language) is a de.facto "programming" language that is used to interact with the Database. A Database contains table(s). SELECT "SELECT" is used to filter and retrieve data from database. We can return partial data by using Teaching Kids Programming - Most Common SQL keywords (Select, Update, Insert, Delete)
- [Teaching Kids Programming - Recursive Algorithms to Compute the K-th Symbol in Grammar](https://helloacm.com/teaching-kids-programming-recursive-algorithms-to-compute-the-k-th-symbol-in-grammar/) - We build a table of n rows (1-indexed). We start by writing 0 in the 1st row. Now in every subsequent row, we look at the previous row and replace each occurrence of 0 with 01, and each occurrence of 1 with 10. For example, for n = 3, the 1st row is 0, the Teaching Kids Programming - Recursive Algorithm to Compute the K-th Symbol in Grammar
- [Introduction to Elastic Collision (Physics)](https://helloacm.com/introduction-to-elastic-collision-physics/) - An elastic collision is a type of collision in which two objects collide and bounce back without undergoing any permanent deformation or generating heat, thus conserving both kinetic energy and momentum. In other words, in an elastic collision, the total kinetic energy of the system (composed of both objects) before the collision is equal to Introduction to Elastic Collision (Physics)
- [Teaching Kids Programming - Count the Digits That Divide a Number (Three Algorithms)](https://helloacm.com/teaching-kids-programming-count-the-digits-that-divide-a-number-three-algorithms/) - Given an integer num, return the number of digits in num that divide num. An integer val divides nums if nums % val == 0. Example 1: Input: num = 7 Output: 1 Explanation: 7 divides itself, hence the answer is 1. Example 2: Input: num = 121 Output: 2 Explanation: 121 is divisible by Teaching Kids Programming - Count the Digits That Divide a Number (Three Algorithms)
- [How to Update the Node.Js Version in Azure Function?](https://helloacm.com/how-to-update-the-node-js-version-in-azure-function/) - What is Azure Function? Azure Functions is a serverless compute service that enables you to run code on-demand without having to explicitly provision or manage infrastructure. Azure Functions supports scripting in Node.js, Python, C#, Java, PHP and PowerShell. It is mainly used for event-driven processing and process automation. You can use Azure Functions to build How to Update the Node.Js Version in Azure Function?
- [Teaching Kids Programming - Longer Contiguous Segments of Ones than Zeros in a Binary String (Three Algorithms)](https://helloacm.com/teaching-kids-programming-longer-contiguous-segments-of-ones-than-zeros-in-a-binary-string-three-algorithms/) - Given a binary string s, return true if the longest contiguous segment of 1's is strictly longer than the longest contiguous segment of 0's in s, or return false otherwise. For example, in s = "110100010" the longest continuous segment of 1s has length 2, and the longest continuous segment of 0s has length 3. Longer Contiguous Segments of Ones than Zeros in a Binary String (Three Algorithms)
- [Teaching Kids Programming - Minimum Operations to Collect Elements from End of Array](https://helloacm.com/teaching-kids-programming-minimum-operations-to-collect-elements/) - You are given an array nums of positive integers and an integer k. In one operation, you can remove the last element of the array and add it to your collection. Return the minimum number of operations needed to collect elements 1, 2, ..., k. Example 1: Input: nums = [3,1,5,4,2], k = 2 Output: Teaching Kids Programming - Minimum Operations to Collect Elements
- [Teaching Kids Programming - Number of Ways to Stay in the Same Place After Some Steps (Top Down Dynamic Programming Algorithm, Recursion with Memoization)](https://helloacm.com/teaching-kids-programming-number-of-ways-to-stay-in-the-same-place-after-some-steps-top-down-dynamic-programming-algorithm-recursion-with-memoization/) - You have a pointer at index 0 in an array of size arrLen. At each step, you can move 1 position to the left, 1 position to the right in the array, or stay in the same place (The pointer should not be placed outside the array at any time). Given two integers steps and Teaching Kids Programming - Number of Ways to Stay in the Same Place After Some Steps (Top Down Dynamic Programming Algorithm, Recursion with Memoization)
- [How to Kill a Process That Opens a TCP/UDP Port?](https://helloacm.com/how-to-kill-a-process-that-opens-a-tcp-udp-port/) - Killing a process that opens a TCP port can be necessary in various situations, such as when you want to stop a misbehaving or unwanted application or service. Here are the general steps to kill a process that has opened a specific TCP port: How to Identify the Process That Opens a TCP/UDP Port? First, How to Kill a Process That Opens a TCP/UDP Port?
- [Bash Scripts to Check if a Domain or URL is Ping-able or Accessible](https://helloacm.com/bash-scripts-to-check-if-a-domain-or-url-is-ping-able-or-accessible/) - How to Check if a Domain can be Ping-able? Creating a bash script to check if a domain is reachable via ping can be very useful for basic network troubleshooting. The script will attempt to ping the domain, and if it fails, it will retry up to 3 times before reporting that the domain is Bash Scripts to Check if a Domain or URL is Ping-able or Accessible
- [What are the Differences between uBPF and eBPF?](https://helloacm.com/what-are-the-differences-between-ubpf-and-ebpf/) - "uBPF" and "eBPF" are both related to BPF, which stands for Berkeley Packet Filter, a technology used in computing for various purposes, including network packet filtering. Over time, BPF has evolved far beyond its original scope, leading to extended BPF (eBPF) and other variations like uBPF. Here's how they differ: eBPF (extended Berkeley Packet Filter) What are the Differences between uBPF and eBPF?
- [Teaching Kids Programming - Divisible and Non-divisible Sums Difference (Brute Force Algorithm and Math)](https://helloacm.com/teaching-kids-programming-divisible-and-non-divisible-sums-difference-brute-force-algorithm-and-math/) - You are given positive integers n and m. Define two integers, num1 and num2, as follows: num1: The sum of all integers in the range [1, n] that are not divisible by m. num2: The sum of all integers in the range [1, n] that are divisible by m. Return the integer num1 - num2. Teaching Kids Programming - Divisible and Non-divisible Sums Difference (Brute Force Algorithm and Math)
- [How to Transfer or Send ETH to Another Wallet on Ethereum Blockchain?](https://helloacm.com/how-to-transfer-or-send-eth-to-another-wallet-on-ethereum-blockchain/) - To send ETH using NodeJS, you can utilize the web3.js library. Here's a basic example that demonstrates how to send ETH from one account to another: First, make sure to install the necessary libraries: npm install web3 Here's a basic NodeJS script to send ETH: const Web3 = require('web3'); const INFURA_ENDPOINT = 'YOUR_INFURA_ENDPOINT'; // Get How to Transfer or Send ETH to Another Wallet on Ethereum Blockchain?
- [The Known Public Free DNS Servers](https://helloacm.com/the-known-public-free-dns-servers/) - If you can ping an IP but you can't ping a domain name e.g. the "apt update" doesn't work, most likely, this is due to inaccessible DNS settings. You can check the: $ cat /etc/resolv.cnf And you can add a nameserver entry, such as: # google dns nameserver 8.8.8.8 Save the file and exit (:wq) The Known Public Free DNS Servers
- [Teaching Kids Programming - Compute Sum of 1/(1+2+..N) Using Math and Python](https://helloacm.com/teaching-kids-programming-compute-sum-of-1-12-n-using-math-and-python/) - Let's compute the following: [math] f(N)=\frac{1}{1}+\frac{1}{1+2}+\frac{1}{1+2+3}+\frac{1}{1+2+3+4}+\ldots\frac{1}{1+2+\ldots N} [/math] Math Proof of the Equation of Sum of the First N Positive Integers We know that the sum of the first few positive integers is: [math] S=1+2+3+\ldots N [/math] Let's write it again but in backwards order: [math] S=N+(N-1)+(N-2)+\ldots 2+1 [/math] Therefore, [math] 2S = (N+1)+(N+1)+\ldots (N+1) Teaching Kids Programming - Compute Sum of 1/(1+2+..N) Using Math and Python
- [Teaching Kids Programming - Maximum Odd Binary Number](https://helloacm.com/teaching-kids-programming-maximum-odd-binary-number/) - You are given a binary string s that contains at least one '1'. You have to rearrange the bits in such a way that the resulting binary number is the maximum odd binary number that can be created from this combination. Return a string representing the maximum odd binary number that can be created from Teaching Kids Programming - Maximum Odd Binary Number
- [Teaching Kids Programming - Compute the Amount of Water of a Glass in a Pyramid Stacked Glasses (Top Down Dynamic Programming Algorithm - Recursion with Memoization)](https://helloacm.com/teaching-kids-programming-compute-the-amount-of-water-of-a-glass-in-a-pyramid-stacked-glasses-top-down-dynamic-programming-algorithm-recursion-with-memoization/) - We stack glasses in a pyramid, where the first row has 1 glass, the second row has 2 glasses, and so on until the 100th row. Each glass holds one cup of champagne. Then, some champagne is poured into the first glass at the top. When the topmost glass is full, any excess liquid poured Teaching Kids Programming - Compute the Amount of Water of a Glass in a Pyramid Stacked Glasses (Top Down Dynamic Programming Algorithm - Recursion with Memoization) 799. Champagne Tower
- [How to Check if a Given String is a Valid Ethereum Wallet Address?](https://helloacm.com/how-to-check-if-a-given-string-is-a-valid-ethereum-wallet-address/) - A Valid Ethereum Wallet Address Starts with "0x" and is 42 characters long. To check if a given string is a valid Ethereum address, you would typically: Check if it's 42 characters long (including the 0x prefix). Ensure it consists only of hexadecimal characters. Optionally, verify the checksum if it's in mixed-case EIP-55 format. Here's How to Check if a Given String is a Valid Ethereum Wallet Address?
- [How to Get the Latest Block Number (Head Block) on Ethereum Blockchain?](https://helloacm.com/how-to-get-the-latest-block-number-head-block-on-ethereum-blockchain/) - The simplest method/function to retrieve the latest block number on ETH aka Ethereum Blockchain is via the following method: const Web3 = require('web3'); const getBlockNumber = async() => { const MAIN_ENDPOINT = "https://mainnet.infura.io/v3/..."; const web3 = new Web3(ENDPOINT); return await web3.eth.getBlockNumber(); } You would need the web3 library: npm install web3 --EOF (The Ultimate Computing How to Get the Latest Block Number (Head Block) on Ethereum Blockchain?
- [How to Modify or Patch the Compiled Executable (inplace, reverse engineering)?](https://helloacm.com/how-to-modify-or-patch-the-compiled-executable-inplace-reverse-engineering/) - I have a compiled .o file, and how to modify a string constant in it? for example, change "hello" to "HELLO". Let's take a look at this simple C source code that outputs "Hello World!". // test.c #include int main() { printf("Hello World!\n"); return 0; } Let's compile this: gcc -o test.o test.c And How to Modify or Patch the Compiled Executable (inplace, reverse engineering)?
- [How to View the Byte Code (Dis-assembler) of a Compiled Executable?](https://helloacm.com/how-to-view-the-byte-code-dis-assembler-of-a-compiled-executable/) - To view the bytecode of a compiled executable, you can follow these steps: Compile the C source code to generate an executable file with debugging information using the -g flag with a C compiler like GCC: gcc -g -o output_file source_file.c Replace output_file with the desired name for your executable and source_file.c with the name How to View the Byte Code (Dis-assembler) of a Compiled Executable?
- [Programming Language Conversion Tool based on ChatGPT AI](https://helloacm.com/programming-language-conversion-tool-based-on-chatgpt-ai/) - ChatGPT is not a simple AI - but it is rather a AGI - Artificial General Intelligence. I use ChatGPT to perform many tasks, and translating one programming language to another is one of the tasks that ChatGPT performs well, see below example: The translated code just works without any modifications. Suggested Prompt for ChatGPT: Programming Language Conversion Tool based on ChatGPT AI
- [ChatGPT Use Case: A Good Personal AI Assistant to Help You Write Emails](https://helloacm.com/chatgpt-use-case-a-good-personal-ai-assistant-to-help-you-write-emails/) - What can ChatGPT (the AI) do? Writing email is one of the trival task for ChatGPT. ChatGPT helps me to write the email, and I am very pleased that ChatGPT can do the job well. Also, as a Personal Assistant, ChatGPT will never complain. You can always ask it to refactor/improve or even just simply ChatGPT Use Case: A Good Personal AI Assistant to Help You Write Emails Artificial General Intelligence, AGI
- [ChatGPT Refactors/Rewrites the Code using Promise.All - Sending Requests in Parallel](https://helloacm.com/chatgpt-refactors-rewrites-the-code-using-promise-all-sending-requests-in-parallel/) - In one of my project, I have the following code (Node/Javascript) that invokes a few APIs one by one (sequentially). However, these HTTPS requests can be done in parallel as they are independent of each other. I just need to aggregate the results in an array. I asked ChatGPT to rewrite using promise all to ChatGPT Refactors/Rewrites the Code using Promise.All - Sending Requests in Parallel Artificial General Intelligence, AGI
- [On Waiting List of ChatGPT 4 API](https://helloacm.com/on-waiting-list-of-chatgpt-4-api/) - As of today, The ChatGPT-4 API Access is not yet available but we can request to be on waiting list. However, we can experiment the ChatGPT-4 if we are on paid subscription ($20 per month), aka the ChatGPT Plus. I have enabled the Paid (Pay as You Go) for API access, and also requested to On Waiting List of ChatGPT 4 API Artificial General Intelligence, AGI
- [The System Design of Steem Blockchain (ChatGPT DApps) Bots](https://helloacm.com/the-system-design-of-steem-blockchain-bots/) - The System Design of Steem Blockchain (ChatGPT DApps) Bots Artificial General Intelligence, AGI
- [ChatGPT Fails to Solve the Sudoku](https://helloacm.com/chatgpt-fails-to-solve-the-sudoku/) - I bought a Sudoku Book (Magazine). Today, I spent time with kids to solve this Sudoku Game, in about 10 minutes. Then, I tried the Sudoku API: curl -s -X POST "https://str.justyy.workers.dev/sudoku/?format=raw" -d "000100609 000090002 450200371 000400215 106502908 245008000 894001067 300050000 502007000" The 0 is unknown, aka, the blank to fill. And immediately, the Sudoku ChatGPT Fails to Solve the Sudoku Artificial General Intelligence, AGI
- [ChatGPT Designs a Health Check Tool in Node.Js to Run on Free VPS Instance](https://helloacm.com/chatgpt-designs-a-health-check-tool-in-node-js-to-run-on-free-vps-instance/) - ChatGPT Designs a Health Check Tool in Node.Js to Run on Free VPS InstanceBackground: Vultr has rolled out a free VPS. It is 512MB and 1 CPU Core. One idea is to run a health check tool for all your websites, and send notification in case of errors. This is to replace the CloudFlare Health-checks which are only available for Pro users ($25 per month or $20 if Artificial General Intelligence, AGI
- [OpenAI Text Classifier Fails to Detect ChatGPT Text](https://helloacm.com/openai-text-classifier-fails-to-detect-chatgpt-text/) - OpenAI provides an Online Text Classifier Tool to detect if a text (min 1000 characters, 150 to 250 words) is likely to be generated by AI such as ChatGPT or Notion AI. However, it seems not very accurate. Both of the following two examples are generated by ChatGPT however they are being detected as "Unclear" OpenAI Text Classifier Fails to Detect ChatGPT Text Artificial General Intelligence, AGI
- [Quantum Computing in Simple Terms (ChatGPT vs Notion AI)](https://helloacm.com/quantum-computing-in-simple-terms-chatgpt-vs-notion-ai/) - ChatGPT: Explain quantum computing in simple terms Quantum computing is a type of computing that uses quantum bits, or qubits, instead of traditional binary bits to store and process information. While binary bits can only be in one of two states (0 or 1), qubits can be in multiple states at the same time, a Quantum Computing in Simple Terms (ChatGPT vs Notion AI) Artificial General Intelligence, AGI
- [How ChatGPT Solves a Math Puzzle?](https://helloacm.com/how-chatgpt-solves-a-math-puzzle/) - ChatGPT has been a hot topics these days. It can be creative in some ways by writing a poem. It can be a code assistant by providing code snippets and solutions. It can be a Wiki by answering questions. How is it performing when it comes to math or logics questions? I have asked ChatGPT How ChatGPT Solves a Math Puzzle? Prompt Engineering, Artificial General Intelligence, AGI
- [How ChatGPT Impacts UGC (User Generate Content)?](https://helloacm.com/how-chatgpt-impacts-ugc-user-generate-content/) - UGC (User Generated Content), also known as user-generated content, is original content published by users on the Internet, such as articles, pictures, videos, comments, etc. Over the past few years, UGC has played an increasingly important role in business, media, and other industries. In recent years, the emergence of ChatGPT (Conversational Generative Pretrained Transformer) has How ChatGPT Impacts UGC (User Generate Content)? Artificial General Intelligence, AGI
- [What is going to be the next trend in technology in the next 10 years?](https://helloacm.com/what-is-going-to-be-the-next-trend-in-technology-in-the-next-10-years/) - What is going to be the next trend in technology in the next 10 years? ChatGPT says: The next trend in technology in the next 10 years will likely be the continued development of artificial intelligence (AI), the Internet of Things (IoT), and 5G networks. AI will continue to become more sophisticated and integrated into #computing #blockchain #ai #chatgpt3 What is going to be the next trend in technology in the next 10 years? Artificial General Intelligence, AGI
- [Teaching Kids Programming - Minimum Operations to Reduce X to Zero (Two Pointer Sliding Window Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-x-to-zero-two-pointer-sliding-window-algorithm/) - You are given an integer array nums and an integer x. In one operation, you can either remove the leftmost or the rightmost element from the array nums and subtract its value from x. Note that this modifies the array for future operations. Return the minimum number of operations to reduce x to exactly 0 Teaching Kids Programming - Minimum Operations to Reduce X to Zero (Two Pointer Sliding Window Algorithm)
- [Teaching Kids Programming - Minimum Operations to Reduce X to Zero (Two Pointer + Top Down Dynamic Programming Algorithm + Recursion with Memoization)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-x-to-zero-two-pointer-top-down-dynamic-programming-algorithm-recursion-with-memoization/) - You are given an integer array nums and an integer x. In one operation, you can either remove the leftmost or the rightmost element from the array nums and subtract its value from x. Note that this modifies the array for future operations. Return the minimum number of operations to reduce x to exactly 0 Minimum Operations to Reduce X to Zero (Two Pointer + Top Down Dynamic Programming Algorithm + Recursion with Memoization)
- [Introduction to Parquet Files](https://helloacm.com/introduction-to-parquet-files/) - I have learned the format of Parquet files when I was working for Amazon Cloud Services (specifically S3). In short, the Parquet Files are column-based or column-oriented formats. What is parquet files and why they are useful than the row-based formats? Parquet is a columnar storage file format optimized for use with big data processing Introduction to Parquet Files
- [Teaching Kids Programming - Minimum Right Shifts to Sort the Array](https://helloacm.com/teaching-kids-programming-minimum-right-shifts-to-sort-the-array/) - You are given a 0-indexed array nums of length n containing distinct positive integers. Return the minimum number of right shifts required to sort nums and -1 if this is not possible. A right shift is defined as shifting the element at index i to index (i + 1) % n, for all indices. Example Teaching Kids Programming - Minimum Right Shifts to Sort the Array
- [Teaching Kids Programming - Count the Intersection Points Given Intervals (Line Sweep Algorithm)](https://helloacm.com/teaching-kids-programming-count-the-intersection-points-given-intervals-line-sweep-algorithm/) - You are given a 0-indexed 2D integer array nums representing the coordinates of the cars parking on a number line. For any index i, nums[i] = [starti, endi] where starti is the starting point of the ith car and endi is the ending point of the ith car. Return the number of integer points on Teaching Kids Programming - Count the Intersection Points Given Intervals (Line Sweep Algorithm)
- [Avoid Single Point of Failures by Introducing Multiple Master Backup Reader Node on Steem Bot Applications](https://helloacm.com/avoid-single-point-of-failures-by-introducing-multiple-master-backup-reader-node-on-steem-bot-applications/) - Previously, I have integrated the ChatGPT AI Bot to the Steem Blockchain: Integrating ChatGPT Prompt AI to STEEM blockchain and I have shown you the System Design of a Bot (dApp aka Distributed Application) that is running on the Steem Blockchain. There is one problem. There is a single point of failure when the process Avoid Single Point of Failures by Introducing Multiple Master Backup Reader Node on Steem Bot Applications
- [How to PyArg_ParseTuple the bytearray in Python to C ?](https://helloacm.com/how-to-pyarg_parsetuple-the-bytearray-in-python-to-c/) - How to PyArg_ParseTuple the bytearray in Python to C? For example, in Python, array = bytearray(bytes(random.choice(range(256)) * length)) and sometimes we want to pass this byte array to C using the PyArg_ParseTuple function (Python-C Library). We can convert the Python bytearray object to a C char* and its length to Py_ssize_t. Here's an example to How to PyArg_ParseTuple the bytearray in Python to C ?
- [Retrieve the Latest Block Information from Steem Blockchain](https://helloacm.com/retrieve-the-latest-block-information-from-steem-blockchain/) - To retrieve the latest block information from the Steem blockchain using the curl command, you can make use of the Steem API. Here's a command that you can use in your terminal: curl -s --data '{"jsonrpc":"2.0", "method":"condenser_api.get_dynamic_global_properties", "params":[], "id":1}' https://api.steemit.com | jq This curl command sends a POST request to the Steemit API, specifically the Retrieve the Latest Block Information from Steem Blockchain
- [Differences (Responsibilities, Skills and Tools) Among Engineering Roles](https://helloacm.com/differences-responsibilities-skills-and-tools-among-engineering-roles/) - With the popularity of Machine Learning, Big Data and Artificial Intelligence, more jobs are created. This post will peek into the Responsibilities, Skills and Tools for job roles that are popular today. Differences (Responsibilities, Skills and Tools) Among Engineering Roles What are the differences among these engineering roles: Data Engineering, Data Scientist, Data Analytist, Machine Differences (Responsibilities, Skills and Tools) Among Engineering Roles
- [Should I Ignore 429 Error (Too Many Requests) in AWS Health Monitor Checks or Health Canary in General?](https://helloacm.com/should-i-ignore-429-error-too-many-requests-in-aws-health-monitor-checks-or-health-canary-in-general/) - Health Checks or Canaries are sending requests periodically to ensure the API or services are working healthy. Should I Ignore 429 Error in Health Canary Checks in General? The HTTP 429 status code means "Too Many Requests" and indicates that the user has sent too many requests in a given amount of time. If you're Should I Ignore 429 Error (Too Many Requests) in AWS Health Monitor Checks or Health Canary in General?
- [Teaching Kids Programming - Smallest Number With Given Digit Product (Greedy Factorization Algorithm)](https://helloacm.com/teaching-kids-programming-smallest-number-with-given-digit-product-greedy-factorization-algorithm/) - Given a positive integer n, return a string representing the smallest positive integer such that the product of its digits is equal to n, or "-1" if no such number exists. Example 1: Input: n = 105 Output: "357" Explanation: 3 * 5 * 7 = 105. It can be shown that 357 is the Teaching Kids Programming - Smallest Number With Given Digit Product (Greedy Factorization Algorithm)
- [Teaching Kids Programming - Count Number of Even and Odd Bits (Binary)](https://helloacm.com/teaching-kids-programming-number-of-even-and-odd-bits/) - You are given a positive integer n. Let even denote the number of even indices in the binary representation of n (0-indexed) with value 1. Let odd denote the number of odd indices in the binary representation of n (0-indexed) with value 1. Return an integer array answer where answer = [even, odd]. Example 1: Teaching Kids Programming - Count Number of Even and Odd Bits (Binary)
- [What is the Concept of "Cloud Native"?](https://helloacm.com/what-is-the-concept-of-cloud-native/) - "Cloud native" refers to the design and implementation of applications that are built from the start to run in cloud environments. The term encompasses a range of tools, best practices, and methodologies for building and running scalable and resilient applications in modern, dynamic cloud environments. Here are some key principles and characteristics of cloud-native applications: What is the Concept of "Cloud Native"?
- [Teaching Kids Programming - Furthest Point From Origin (Hash Map)](https://helloacm.com/teaching-kids-programming-furthest-point-from-origin-hash-map/) - You are given a string moves of length n consisting only of characters 'L', 'R', and '_'. The string represents your movement on a number line starting from the origin 0. In the ith move, you can choose one of the following directions: move to the left if moves[i] = 'L' or moves[i] = '_' Teaching Kids Programming - Furthest Point From Origin (Hash Map)
- [Teaching Kids Programming - Two Algorithms to Find All Numbers Disappeared in an Array (Hash Set)](https://helloacm.com/teaching-kids-programming-two-algorithms-to-find-all-numbers-disappeared-in-an-array/) - Given an array nums of n integers where nums[i] is in the range [1, n], return an array of all the integers in the range [1, n] that do not appear in nums. Example 1: Input: nums = [4,3,2,7,8,2,3,1] Output: [5,6] Example 2: Input: nums = [1,1] Output: [2] Constraints: n == nums.length 1
- [Node/Javascript Async/Await/Promise Function to Fetch JSON of an API URL](https://helloacm.com/node-javascript-async-await-promise-function-to-fetch-json-of-an-api-url/) - Most APIs return JSON. Below is a simple example of a Node.js (Javascript) async function that uses the node-fetch package to fetch JSON data from the provided URL. Firstly, you'll need to install the node-fetch package if you haven't already: npm install node-fetch Next, you can use the following function: const fetch = require('node-fetch'); async Node/Javascript Async/Await/Promise Function to Fetch JSON of an API URL
- [How to Implement a Reversed Iterator in Python?](https://helloacm.com/how-to-implement-a-reversed-iterator-in-python/) - Introduction to the Reversed Iterator in Python A Python reverse iterator is a type of iterator that allows you to iterate through a sequence, such as a list or a string, in reverse order. You can create a reverse iterator using Python's built-in reversed() function or by implementing a custom iterator. Here's how you can How to Implement a Reversed Iterator in Python?
- [Improve Multithreading Performance of Sqlite Database by WAL (Write Ahead Logging)](https://helloacm.com/improve-multithreading-performance-of-sqlite-database-by-wal-write-ahead-logging/) - By Default, the SQLite locks the database when there are simutanenous reading and writing. SQlite stores data in a file. For example we can use the following command to open a database named sample.db sqlite3 sample.db Sqlite If a thread A is performing a read query e.g. SELECT, and another thread B is performing a Improve Multithreading Performance of Sqlite Database by WAL (Write Ahead Logging)
- [How to Describe a Table in Sqlite Database?](https://helloacm.com/how-to-describe-a-table-in-sqlite-database/) - To describe a table in SQLite, you can use the following SQL command: PRAGMA table_info(table_name); Replace table_name with the name of the table you want to describe. This command will provide information about the columns in the specified table, including the column name, data type, whether it's nullable, the default value, and whether it's a How to Describe a Table in Sqlite Database?
- [Python Function to Find Available Ports within a Range](https://helloacm.com/python-function-to-find-available-ports-within-a-range/) - Finding available ports within a given range requires checking if a specific port can be bound to or not. If we can bind to it, it means it's available. One of the ways to achieve this is using Python's socket module. Here's a function that checks the available ports within a range: import socket def Python Function to Find Available Ports within a Range
- [Teaching Kids Programming - Count Servers that Communicate (Hash Map - Counter)](https://helloacm.com/teaching-kids-programming-count-servers-that-communicate-hash-map-counter/) - You are given a map of a server center, represented as a m * n integer matrix grid, where 1 means that on that cell there is a server and 0 means that it is no server. Two servers are said to communicate if they are on the same row or on the same column. Teaching Kids Programming - Count Servers that Communicate (Hash Map - Counter)
- [A Lite Comparison between Linode and Vultr ($5 Basic Plan) Cloud VPS](https://helloacm.com/a-lite-comparison-between-linode-and-vultr-5-basic-plan-cloud-vps/) - A Lite Comparison between Linode and Vultr ($5 Basic Plan) Cloud VPS This article is not intended to say who is better than whom, but it gives a few facts based on my testings and experiments as of today.
- [Introduction to The Components of a Compiler](https://helloacm.com/introduction-to-the-components-of-a-compiler/) - A compiler is a special program that translates a source code written in one programming language (source language) into another language, usually machine code (target language), that can be executed by a computer. Here are the components of a compiler and their purposes: Lexical Analyzer (Lexer) Purpose: It reads the source code one character at Introduction to The Components of a Compiler
- [Teaching Kids Programming - Recursive Algorithms to Balance a Binary Search Tree](https://helloacm.com/teaching-kids-programming-recursive-algorithms-to-balance-a-binary-search-tree/) - Given the root of a binary search tree, return a balanced binary search tree with the same node values. If there is more than one answer, return any of them. A binary search tree is balanced if the depth of the two subtrees of every node never differs by more than 1. Example 1: Input: Teaching Kids Programming - Recursive Algorithms to Balance a Binary Search Tree
- [How to Download Files from Amazon Drive Before It Discontinues](https://helloacm.com/how-to-download-files-from-amazon-drive-before-it-discontinues/) - Amazon Drive will discontinue soon in Dec 2023 this year. Amazon Drive is a Cloud Storage (like Dropbox, Google Drive, Box, Microsoft One Drive) that we can use to store files securely in the Cloud. Most providers offer a 5GB free plan. Many providers have discontinued the Cloud Drive Services because if is a competitive How to Download Files from Amazon Drive Before It Discontinues
- [Store and Backup Unlimited Photos using Amazon Photos (Prime)](https://helloacm.com/store-and-backup-unlimited-photos-using-amazon-photos-prime/) - To me, the best thing of having a Amazon Prime membership/subscription is to have a unlimited photo backup/cloud storage. So far, I have stored more than 200K photos on Amazon Photos and it would cost me more if I choose to store them somewhere else in the cloud. Data is very important, and do Backup Store and Backup Unlimited Photos using Amazon Photos (Prime)
- [Teaching Kids Programming - Three Sum Algorithm](https://helloacm.com/teaching-kids-programming-three-sum-algorithm/) - Three Sum algorithm using Python Given an array of numbers and a target, find out if there is any three numbers that sum up to target. Three Sum Algorithm We can sort the array in O(NLogN) time. Then, iterate the first number with O(N), and then we can apply Two Sum on the subarray on the right. def threeSum(nums, target):
- [How to Find the Closest Sum of Three in an Array using Two Pointer Algorithm? (3Sum Closest)](https://helloacm.com/how-to-find-the-closest-sum-of-three-in-an-array-using-two-pointer-algorithm-3sum-closest/) - How to Find the Closest Sum of Three in an Array using Two Pointer Algorithm? (3Sum Closest) We first need to sort the entire array which takes O(nlogN). Once we have determined the first two numbers in O(N^2), we can search the rest in (logN) as the array is sorted. The following algorithm takes O(n*n*logN). Given an array nums of n integers and an integer target, find three integers in nums such that the sum is closest to target. Return the sum of the three integers. You may assume that each input would have exactly one solution. Example: Given array nums = [-1, 2, 1, -4], and target = 1.
- [How to Design a Two-Sum Data Structure?](https://helloacm.com/how-to-design-a-two-sum-data-structure/) - How to Design a Two-Sum Data Structure? All the above Two-Sum data structures require O(N) space complexity to store the numbers. Design and implement a TwoSum class. It should support the following operations: add and find. add - Add the number to an internal data structure. find - Find if there exists any pair of numbers which sum is equal to the value. Example 1: add(1); add(3); add(5); find(4) -> true find(7) -> false Example 2:
- [Teaching Kids Programming - 3 Different Approaches to Solve Two-Sum Problem](https://helloacm.com/teaching-kids-programming-3-different-approaches-to-solve-two-sum-problem/) - Teaching Kids Programming - 3 Different Approaches to Solve Two-Sum Problem As long as the left and right pointer not meeting in the middle, we move the left pointer one step to the right if the sum is less than the target, or the right pointer one step to the left if the sum is larger. Otherwise, when the sum equals to the target, we can just return True.
- [Algorithms to Check Sum of Two Numbers in Binary Search Trees](https://helloacm.com/algorithms-to-check-sum-of-two-numbers-in-binary-search-trees/) - Algorithms to Check Sum of Two Numbers in Binary Search Trees Binary Search Trees are suitable for "Binary Search". We can traverse one tree say A, and search for (target - A) in Tree B. The complexity is O(ALogB) or O(BLogA) assuming both Binary Search Trees are highly balanced. As we are recursively traversing two trees, the space complexity is O(LogA+LogB) due to implicitly space from Recursion.
- [Recursion and Two Pointer Algorithms to Determine Four Sum](https://helloacm.com/recursive-and-two-pointer-algorithms-to-determine-four-sum/) - Given a list of integers nums and an integer k, return whether there are four distinct elements in the list that add up to k. Given a list of integers nums and an integer k, return whether there are four distinct elements in the list that add up to k. Constraints n ≤ 100 where n is length of nums. Example 1 Input nums = [10, 3, 5, 9, 4, 0] k = 17 Output true Explanation We can use
- [Two Pointer Algorithm to Count the Sum of Three Numbers Less than Target](https://helloacm.com/two-pointer-algorithm-to-count-the-sum-of-three-numbers-less-than-target/) - Two pointer algorithm to count the number of three sum less than a target Given a list of integers nums and an integer target, return the number of triples i < j < k that exist such that nums[i] + nums[j] + nums[k] < target. Constraints n ≤ 1,000 where n is the length of nums Example 1 Input nums = [-3, 5, 3, 2, 7] target = 9
- [Teaching Kids Programming - Recursive Algorithm to Find the Sum of Two Numbers in BSTs](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-find-the-sum-of-two-numbers-in-bsts/) - Finding the sum of the two numbers in two binary search trees using recursion You are given two binary search trees a and b and an integer target. Return whether there's a number in a and a number in b such that their sum equals to target. Sum of Two Numbers in BSTs We can do this recursively. If one of the Binary Search Tree is None, the result
- [Teaching Kids Programming - Two Pointer Algorithm to Solve Four Sum Problem](https://helloacm.com/teaching-kids-programming-two-pointer-algorithm-to-solve-four-sum-problem/) - Four sum using two pointer algorithm A few days ago, we learned to solve the four sum problem using the Bruteforce Algorithm or Depth First Search Algorithm: Teaching Kids Programming – Sum of Four Numbers using Depth First Search Algorithm Given a list of integers nums and an integer k, return whether there are four distinct elements in the list that
- [Teaching Kids Programming - Sum of Two Numbers Less Than Target using Two Pointer Algorithm](https://helloacm.com/teaching-kids-programming-sum-of-two-numbers-less-than-target-using-two-pointer-algorithm/) - two pointer algorithm to sum of two numbers less than target Given a list of integers nums and an integer target, return the sum of the largest pair of numbers in nums whose sum is less than target. You can assume that there is a solution. Constraints 2 ≤ n ≤ 100,000 where n is the length of nums Example 1 Input nums = [5, 1,
- [Teaching Kids Programming - Count Pairs Whose Sum is Less than Target (Two Pointer Algorithm)](https://helloacm.com/teaching-kids-programming-count-pairs-whose-sum-is-less-than-target-two-pointer-algorithm/) - Given a 0-indexed integer array nums of length n and an integer target, return the number of pairs (i, j) where 0
- [The Two Sum Algorithm using HashMap in C++/Java](https://helloacm.com/coding-exercise-cjava-leetcode-online-judge-two-sum-hashmap/) - Using Hashmap is very common in accelerating solutions and reducing algorithm complexity. A Hashmap is a data structure that is aimed for high performance lookup, indexing items etc. Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. Example 1: Input: nums
- [Two Pointer Algorithm to Find Maximum Two Sum Less Than K](https://helloacm.com/two-pointer-algorithm-to-find-maximum-two-sum-less-than-k/) - Two Pointer Algorithm to Find Maximum Two Sum Less Than K The bruteforce is the most intutive algorithm that we can use. We can bruteforce the two-pair in O(N^2) time complexity. Then, if the sum is less than K, we record the maxium. Given an array A of integers and integer K, return the maximum S such that there exists i < j with A[i] + A[j] = S and S < K. If no i, j exist satisfying this equation, return -1. Example 1: Input: A = [34,23,1,24,75,33,54,8], K = 60 Output: 58 Explanation: We can use
- [Teaching Kids Programming - Two Sum Algorithms](https://helloacm.com/teaching-kids-programming-two-sum-algorithm/) - Two sum algorithms via bruteforce algorithm and using hash set linear algorithm Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target. You may assume that each input would have exactly one solution, and you may not use the same element twice. You can return the answer in any order. Example 1: Input: nums
- [Teaching Kids Programming - Two Sum Algorithm when Input Array is Sorted](https://helloacm.com/teaching-kids-programming-two-sum-algorithm-when-input-array-is-sorted/) - Teaching Kids Programming - Two Sum Algorithm when Input Array is Sorted Given an array of integers numbers that is already sorted in ascending order, find two numbers such that they add up to a specific target number. Return the indices of the two numbers (1-indexed) as an integer array answer of size 2, where 1
- [Teaching Kids Programming - Two Sum in Binary Search Tree via Inorder and Two Pointer Algorithm](https://helloacm.com/teaching-kids-programming-two-sum-in-binary-search-tree-via-inorder-and-two-pointer-algorithm/) - Teaching Kids Programming - Two Sum in Binary Search Tree via Inorder and Two Pointer Algorithm
- [Teaching Kids Programming - Find The K-th Lucky Number (Complete Binary Tree Algorithm)](https://helloacm.com/teaching-kids-programming-find-the-k-th-lucky-number-complete-binary-tree-algorithm/) - We know that 7 and 8 are lucky digits. Also, a number is called lucky if it contains only lucky digits. You are given an integer k, return the kth lucky number represented as a string. Example 1: Input: k = 4 Output: "78" Explanation: The first lucky number is 7, the second one is Teaching Kids Programming - Find The K-th Lucky Number (Complete Binary Tree Algorithm)
- [Teaching Kids Programming - Find The K-th Lucky Number (Binary Mapping Pattern)](https://helloacm.com/teaching-kids-programming-find-the-k-th-lucky-number-binary-mapping-pattern/) - We know that 7 and 8 are lucky digits. Also, a number is called lucky if it contains only lucky digits. You are given an integer k, return the kth lucky number represented as a string. Example 1: Input: k = 4 Output: "78" Explanation: The first lucky number is 7, the second one is Teaching Kids Programming - Find The K-th Lucky Number (Binary Mapping Pattern)
- [Teaching Kids Programming - Find The K-th Lucky Number (Recursive Algorithm)](https://helloacm.com/teaching-kids-programming-find-the-k-th-lucky-number-recursive-algorithm/) - We know that 7 and 8 are lucky digits. Also, a number is called lucky if it contains only lucky digits. You are given an integer k, return the kth lucky number represented as a string. Example 1: Input: k = 4 Output: "78" Explanation: The first lucky number is 7, the second one is Teaching Kids Programming - Find The K-th Lucky Number (Recursive Algorithm)
- [Quick Comparisons: Microsoft Azure v.s. Amazon Web Services (AWS)](https://helloacm.com/quick-comparisons-microsoft-azure-v-s-amazon-web-services-aws/) - Azure and Amazon Web Services (AWS) are two of the most popular cloud computing services on the market. Both offer Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS) solutions, but each have advantages and disadvantages that make them better for certain types of workloads. Azure is better for Windows applications, while AWS is more suitable for Quick Comparisons: Microsoft Azure v.s. Amazon Web Services (AWS)
- [APIM: Azure Managed API - Difference Between External vs Internal Mode](https://helloacm.com/apim-azure-managed-api-difference-between-external-vs-internal-mode/) - In Azure, a "vNet" refers to a virtual network, which allows you to securely connect and isolate Azure resources. The "external" and "internal" modes for vNet in Azure are two different deployment modes for Azure API Management (APIM) services. External Mode In the context of Azure API Management, the "External" mode for vNet integration means APIM: Azure Managed API - Difference Between External vs Internal Mode
- [Teaching Kids Programming - Faulty Keyboard with an Inverse Key (Two Algorithms/Double-ended Queue)](https://helloacm.com/teaching-kids-programming-faulty-keyboard-with-an-inverse-key-two-algorithms/) - Your laptop keyboard is faulty, and whenever you type a character 'i' on it, it reverses the string that you have written. Typing other characters works as expected. You are given a 0-indexed string s, and you type each character of s using your faulty keyboard. Return the final string that will be present on Teaching Kids Programming - Faulty Keyboard with an Inverse Key (Two Algorithms/Double-ended Queue)
- [Teaching Kids Programming - Math Proof of the Number of Odd Degree Vertices in a Graph is Even](https://helloacm.com/teaching-kids-programming-math-proof-of-the-number-of-odd-degree-vertices-in-a-graph-is-even/) - Given a Undirected Graph, we have that: the Number of Odd Degree Vertices in a Graph is Even. Graph G is a collection of Vertices and Edges thus: [math] G = (V, E) [/math]. As each edge contributes to Degree of Two (it is connected by two vertices). Thus the sum of all degrees is Teaching Kids Programming - Math Proof of the Number of Odd Degree Vertices in a Graph is Even
- [Teaching Kids Programming - Conditions That A Connected Graph Can Be Drawn With One Stroke (Euler Path/Euler Cycle/Circuit)](https://helloacm.com/teaching-kids-programming-conditions-that-a-connected-graph-can-be-drawn-with-one-stroke-euler-path-euler-cycle-circuit/) - A connected graph is a graph where there is a path between every pair of vertices. An Euler path is a path in a graph which visits every edge exactly once. It is named after Leonhard Euler, who first described the concept. An Euler path must start and end at different vertices, and all of Teaching Kids Programming - Conditions That A Connected Graph Can Be Drawn With One Stroke (Euler Path/Euler Cycle/Circuit)
- [Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 using Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-an-integer-to-0-using-breadth-first-search-algorithm/) - You are given a positive integer n, you can do the following operation any number of times: Add or subtract a power of 2 from n. Return the minimum number of operations to make n equal to 0. A number x is power of 2 if x == 2i where i >= 0. Example 1: Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 using Breadth First Search Algorithm
- [What is FPGA? (Field-Programmable Gate Array)](https://helloacm.com/what-is-fpga-field-programmable-gate-array/) - FPGA stands for Field-Programmable Gate Array. It is a type of integrated circuit that can be configured by a designer after manufacturing. Unlike application-specific integrated circuits (ASICs) that are designed for specific functions and cannot be changed, FPGAs can be reprogrammed or reconfigured to perform different tasks or functions. FPGAs consist of an array of What is FPGA? (Field-Programmable Gate Array)
- [What is LLVM? (Low-Level Virtual Machine)](https://helloacm.com/what-is-llvm-low-level-virtual-machine/) - What is LLVM? (Low-Level Virtual Machine)Quick Introduction to LLVM LLVM stands for "Low-Level Virtual Machine" but it is often referred to as the LLVM compiler infrastructure nowadays. It is a collection of modular and reusable compiler and toolchain technologies designed to optimize and compile programming languages. LLVM was initially developed as a research project at the University of Illinois at
- [Javascript Function to Generate an Array of Numbers within a Specified Range (the Range Function)](https://helloacm.com/javascript-function-to-generate-an-array-of-numbers-within-a-specified-range-the-range-function/) - The Range Function in Javascript Let's review the following JavaScript function called range. This function generates an array of numbers within a specified range, with a default step of 1. const range = (from, to, step = 1) => { if (typeof from !== 'number' || typeof to !== 'number' || typeof step !== 'number') Javascript Function to Generate an Array of Numbers within a Specified Range (the Range Function)
- [Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy Based on Binary Bits)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-an-integer-to-0-greedy-based-on-binary-bits/) - You are given a positive integer n, you can do the following operation any number of times: Add or subtract a power of 2 from n. Return the minimum number of operations to make n equal to 0. A number x is power of 2 if x == 2i where i >= 0. Example 1: Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy Based on Binary Bits)
- [Starting a Business with Telegram Bots: Creative Ideas to Inspire You](https://helloacm.com/starting-a-business-with-telegram-bots-creative-ideas-to-inspire-you/) - Recently, it has attracted much interests on using Telegram Bots to create different applications, even start a business! One obvious reason is that the Telegram bots are powerful, flexible, and there is nothing really that limits your imaginations. Starting a Business with Telegram Bots: Creative Ideas to Inspire You The digital era has opened up Start a Business on Telegram Bots (Some Creative Ideas) Starting a Business with Telegram Bots: Creative Ideas to Inspire You
- [Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Recursion with Math Proof)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-an-integer-to-0-math-analysis-another-recursion/) - You are given a positive integer n, you can do the following operation any number of times: Add or subtract a power of 2 from n. Return the minimum number of operations to make n equal to 0. A number x is power of 2 if x == 2i where i >= 0. Example 1: Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Recursion with Math Proof)
- [Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy/Iterative Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-an-integer-to-0-greedy-iterative-algorithm/) - You are given a positive integer n, you can do the following operation any number of times: Add or subtract a power of 2 from n. Return the minimum number of operations to make n equal to 0. A number x is power of 2 if x == 2i where i >= 0. Example 1: Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy/Iterative Algorithm)
- [Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy Recursion/Top Down Dynamic Programming Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-operations-to-reduce-an-integer-to-0-greedy-recursion-top-down-dynamic-programming-algorithm/) - You are given a positive integer n, you can do the following operation any number of times: Add or subtract a power of 2 from n. Return the minimum number of operations to make n equal to 0. A number x is power of 2 if x == 2i where i >= 0. Example 1: Teaching Kids Programming - Minimum Operations to Reduce an Integer to 0 (Greedy Recursion/Top Down Dynamic Programming Algorithm)
- [Two PHP Functions to Check HTTP Response Code (Status) of a URL using Curl](https://helloacm.com/php-function-to-get-http-response-code-status-of-a-url/) - Two PHP Functions to Check HTTP Response Code (Status) of a URL using Curl
- [WXT pre-sale is now live - is it worth it?](https://helloacm.com/wxt-pre-sale-is-now-live-is-it-worth-it/) - WXT pre-sale is now live - is it worth it? The WXT you purchased at pre-sale will be locked-up for 6 months before you can sell them e.g. on OKEx exchange. According to here, you can now buy WXT if your are registered with Wirex (Free Registeration). The WXT (from WirexApp) is distributed on a first-come-first-serve basis at a fixed price of $0.01 per token for the duration of the sale. Pre-sale WXT token is Locked-up for 6 months The WXT token you purchased at pre-sale
- [Steem to USDT (TRC-20) - The Trust  Problem](https://helloacm.com/steem-to-usdt-trc-20-the-trust-problem/) - I have developed the STEEM to USDT Swap and I was asked how do you solve the trust problem? Why people trust this tool and believe you will not receive funds and do nothing (or even worse run away)? Centralized Exchange Like all the other CEX (Centralize Exchanges) such as Huobi, STEEM to USDT Swap Steem to USDT (TRC-20) - The Trust Problem
- [Protect the Blockchain or the DApp from DDOS by Rate Limiting?](https://helloacm.com/protect-the-blockchain-or-the-dapp-from-ddos-by-rate-limiting/) - The Steem Blockchain is Ideal for DAPP (Distributed Application) - 3 seconds a block. And it means that we don't need to "Rate Limit" the DAPP in most cases as the chain enforces the 3 second rule. Take the ChatGPT App on the Steem blockchain as an example, any steem account can only post 1 Protect the Blockchain or the DApp from DDOS by Rate Limiting?
- [Delayed Swap due to Numeric Underflow Bug by using Tron's triggerSmartContract Method](https://helloacm.com/delayed-swap-due-to-numeric-underflow-bug-by-using-trons-triggersmartcontract-method/) - Yesterday, @steemit-market sent 20 STEEM to @steem2usdt because he/she wants to swap to USDT on Tron Blockchain (TRC-20), the status was showing "Pending Sent" in the Steem to USDT Swap Tool. This isn't normal - I took a look and investigated, and found out the invoke of API triggerSmartContract fails and says "Numeric Underflow" (Exception) Delayed Swap due to Numeric Underflow Bug by using Tron's triggerSmartContract Method
- [Why ETH Gas Fee is so High today?](https://helloacm.com/why-eth-gas-fee-is-so-high-today/) - I was trying to withdraw the USDT Cryptocurrency (Coin) from Huobi to Crypto.com, and are surprised to see the fee if choosing the ETH. 18 USDT to Send some USDT (Regardless Amount) - which is insane.. I was told that the Gas fee spikes today because of some new projects today. The Ethereum network is Why ETH Gas Fee is so High today?
- [Azure Subscription Cost Vary Due to "Standard SSD Managed - Disk Operations" Difference](https://helloacm.com/azure-subscription-cost-vary-due-to-standard-ssd-managed-disk-operations-difference/) - I have noticed in the last two months, the cost of my Azure Subscription is lower than before. The cost of "Standard SSD Managed - Disk Operations" has been greatly reduced in the last two months - not sure why. 22/03 to 21/04 (Total Cost: 87.04 GBP) - Disk Operations Cost = 4.17 22/02 to Azure Subscription Cost Vary Due to "Standard SSD Managed - Disk Operations" Difference
- [How to Activate a TRON (TRX) Blockchain Wallet Address?](https://helloacm.com/how-to-activate-a-tron-trx-blockchain-wallet-address/) - TLDR; simply send some some TRX to this account to activate - before you'll be able to send assets. For TRON, the wallet address and private keys can be computed offline - and thus you would need to manual activate it to make it appear on the chain. And this can be simply done by How to Activate a TRON (TRX) Blockchain Wallet Address?
- [Ledger Crypto Virtual Card Only Linked to Crypto Wallet](https://helloacm.com/ledger-crypto-virtual-card-only-linked-to-crypto-wallet/) - I have topped up via USDT to Ledger Crypto Wallet - and sold it to GBP (British Pounds). However, it seems that the Ledger Virtual Card Only Linked to Crypto Wallet (I double checked that I do have funds in the "Accounts" via Stablecoins-GBP Wallet: Current Observed Fees using Ledger Crypto Card: Exchanging Stablecoin USDT Ledger Crypto Virtual Card Only Linked to Crypto Wallet
- [Passive Income: Staking TRX on Tron Blockchain and Earn Voting Rewards (4.8% APR)](https://helloacm.com/passive-income-staking-trx-on-tron-blockchain-and-earn-voting-rewards-4-8-apr/) - Earn Passive Income TRX on Tron Blockchain By Staking and Voting Here is the simple way to earn passive income (TRX) on TRON Blockchain: Stake or Lock TRX. It takes 14 days to unlock (Staking Model v2.0). You can do it in tronlink wallet (chrome extension) or tron-cli. Or you can do this automatically and Passive Income: Staking TRX on Tron Blockchain and Earn Voting Rewards (4.8% APR)
- [How to Compute the Chain Age, Uptime and Downtime for Steem Blockchain?](https://helloacm.com/how-to-compute-the-chain-age-uptime-and-downtime-for-steem-blockchain/) - Steem Blockchain has been running for a while, and how to compute the Chain Age, Uptime and Downtime? It is similar to compute the Uptime, Downtime or Fault Rate for a server/service. There were a couple of times that Steem Chain was halted due to a bug on the chain. I remember that once it How to Compute the Chain Age, Uptime and Downtime for Steem Blockchain?
- [The Simple Video .m3u8 Downloader/Parser in PHP and Javascript](https://helloacm.com/the-simple-video-m3u8-downloaderparser-in-php-javascript/) - The Simple Video .m3u8 Downloader/Parser in PHP and Javascript Some video URLs are represented by .m3u8 extension, which is basically a text-format file that contains segments of videos. This post shows you how to parse and download the .m3u8 Video file using the PHP and Javascript. Some video URLs are represented by .m3u8 extension, which is basically a text-format file that contains segments of videos. For example: #EXTM3U #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-TARGETDURATION:8 #EXT-X-VERSION:6 #EXT-X-INDEPENDENT-SEGMENTS #EXT-X-MEDIA-SEQUENCE:0 #EXTINF:2.000, chunk_0.ts #EXTINF:2.000, chunk_1.ts #EXTINF:1.999, chunk_2.ts #EXTINF:2.000, chunk_3.ts #EXTINF:1.999, chunk_4.ts
- [How to Download Tumblr Videos?](https://helloacm.com/how-to-download-tumblr-video-with-php-script-chrome-extensions-online-tool/) - How to Download Tumblr Videos using four methods: manual, PHP script, Online Ajax tool and Chrome Extension This post shows you how to download the Videos from Tumblr website. There are many interesting videos on Tumblr. And if you want to download them (save the Tumblr videos locally), you could follow the steps: How to Download Tumblr Videos Manually? First is right click on the tumblr video and click [View Frame Source]:
- [How to Download Instagram Videos using PHP and Javascript?](https://helloacm.com/how-to-download-instagram-videos-using-php-and-javascript/) - How to Download Instagram Videos using PHP and Javascript? cannot access the HTML of the video page (it will get a different page i.e. 404) without login. The only way to login via PHP script (programmatic) is to add an application, fill in correct and nice details, submit for approval. After your Instagram application is approved, the APIs can be used outside the SandBox (by default, you can only use your Instagram API within the SandBox, for testing). After that, you will require a third party library to get the access token (client id and secret are not sufficient any more) in order to crawl the real/correct Instagram video page. Instagram contains selfie videos besides photos. If you examine the HTML source code of Instagram video page. You will find that video URLs are actually stored in the meta tag with og:video and og:video:secure_url (using HTTPS), the Open Graph meta data format, like this: PHP Function to
- [A Home-made Video Download Helper (Client + Server) - Simple way to Download Videos](https://helloacm.com/a-home-made-video-download-helper-client-server/) - A Home-made Video Download Helper (Client + Server) It is still possible, but harder to let the bots log in with the official APIs (but they usually require manual approval and are rate limited). Some proposes simulating crawling the user login page and prepare the cookie data. But both methods are not easy. A Home-made Video Download Helper (Client + Server) - Simple way to Download Videos About 2 months ago, I have created an online tool https://weibomiaopai.com that helps to analyse the real video URL behind some popular video resources e.g. youtube, tumblr, instagram etc. The idea behind the web tool is to use Ajax to contact 3 powerful API servers. The advantage is that you can focus on the URL-parsing
- [How to Download Video via Workflow?](https://helloacm.com/how-to-download-video-via-workflow/) - How to Download Video via Workflow? And here are the video demos showing you how to download the any videos via the Video Parser workflow The Workflow is an app for the Apple iOS. It allows users to chain a list of actions easily. Workflow can be integrated with IFTTT as well. Users can drag and drop a few operations to make it a powerful workflow. When you install the workflow APP, you can start adding workflows (or creating them).
- [How to Download Video from ted.com in Javascript?](https://helloacm.com/how-to-download-video-from-ted-com-in-javascript/) - How to Download Video from in Javascript? We can use regular expression to parse these URIs, which store the real ted video URLs for different resolution. The following Javascript code has been added to the ted video downloader. This post shows you how to download the video from the ted.com using the Javascript: The video URLs of ted.com have been stored explicitly in HTML source code, as follows: It can be parsed via regular expressions despite that the URIs are expressed over Javascript code snippets instead of actual HTML tags. The video URIs
- [Adding `Image Download List` to the Popular `VideoDownloadHelper` Chrome Extension](https://helloacm.com/adding-image-download-list-to-the-popular-videodownloadhelper-chrome-extension/) - Adding `Image Download List` to the Popular `VideoDownloadHelper` Chrome Extension I have added a function allowing users to extract a list of images in the current page. For example, when users presses the image button, a list of image sources are listed. The Chrome Extension: Simple Video Download Helper is available on Chrome Webstore. The number of current users exceeds 10000 (Hurrray!) It is fully open source on Github. New Features As suggested by my friend, I have added a function allowing users to extract a list of images in the current page. For example, when users
- [VideoDownloader Update: New UI, d.tube and steemit video URL parser, code refactoring!](https://helloacm.com/videodownloader-update-new-ui-d-tube-and-steemit-video-url-parser-code-refactoring/) - VideoDownloader Update: New UI, d.tube and steemit video URL parser, code refactoring! Simple Video Downloader is my first Chrome Extension and what it does is to parse the HTML source code of the video sites for the video and images URLs. and there are more than 10K users! Technology Javascript that runs in the Chrome Browser (ES6) Chrome Webstore https://chrome.google.com/webstore/detail/simple-video-download-hel/ilcdiicigjaccgipndigcenjieedjohj This commits https://github.com/DoctorLai/VideoDownloadHelper/commits?author=DoctorLai New Features of VideoDownloader
- [VideoDownloader Update: VIP Feature of Server Video Parser](https://helloacm.com/videodownloader-update-vip-feature-of-server-video-parser/) - VideoDownloader Update: VIP Feature of Server Video Parser Now, with this update, you can unlock the VIP service of the simple video downloader with a key. The key allows the chrome extension (video parser) to call the video parser API in the server which provides a much up-to-date feature. Simple Video Downloader is my first Chrome Extension and what it does is to
- [How to Solve 403 Forbidden Error (Denied by Referer ACL) when Downloading Weibo Video?](https://helloacm.com/how-to-solve-403-forbidden-error-denied-by-referer-acl-when-downloading-weibo-video/) - Parse Video URL: Denied by Referer ACL The Weibo Video Downloader may give you a original Video URL - but when you open it, it will show the following: ERROR: ACCESS DENIED 403 Forbidden - You don't have permission to access the URL on this server. denied by Referer ACL Powered by Tengine CDN Request How to Solve 403 Forbidden Error (Denied by Referer ACL) when Downloading Weibo Video?
- [How to Enable Inline Chrome Extension Installation in Chrome Browser?](https://helloacm.com/how-to-enable-inline-chrome-extension-installation-in-chrome-browser/) - How to Enable Inline Chrome Extension Installation in Chrome Browser? That will automatically detect the extension item and pop up the inline-installation dialog. An example use will be putting the code in the onclick event of a button: In case you didn't notice [inline chrome extension example], I have added an button/link to allow inline chrome extension without leaving the current page/site. When the users click the button on the top-right corner (+ Chrome Extension), the Chrome users will see this dialog popup, which allows users intall the chrome extension without leaving the
- [Teaching Kids Programming - Algorithms to Count Houses in a Circular Street](https://helloacm.com/teaching-kids-programming-algorithms-to-count-houses-in-a-circular-street/) - You are given an object street of class Street that represents a circular street and a positive integer k which represents a maximum bound for the number of houses in that street (in other words, the number of houses is less than or equal to k). Houses' doors could be open or closed initially. Initially, Teaching Kids Programming - Algorithms to Count Houses in a Circular Street
- [Teaching Kids Programming - Algorithms to Count Houses in a Circular Street (with Restrictions - at least one door open)](https://helloacm.com/teaching-kids-programming-algorithms-to-count-houses-in-a-circular-street-with-restrictions-at-least-one-door-open/) - You are given an object street of class Street that represents a circular street and a positive integer k which represents a maximum bound for the number of houses in that street (in other words, the number of houses is less than or equal to k). Houses' doors could be open or closed initially (at Teaching Kids Programming - Algorithms to Count Houses in a Circular Street (with Restrictions - at least one door open)
- [Python Script to Run a Query to Get Data from Azure Log Analytics](https://helloacm.com/python-script-to-run-a-query-to-get-data-from-azure-log-analytics/) - To run a query and get data from Azure Log Analytics, we need to utilize the Azure Monitor Log Analytics REST API. First, we need to create an Azure Active Directory (Azure AD) app to gain the necessary permissions to call this API. We can create this app in the Azure portal. Once we have Python Script to Run a Query to Get Data from Azure Log Analytics
- [Use Flickr Uploader to Backup Photos Automatically](https://helloacm.com/use-flickr-uploader-to-backup-photos-automatically/) - Use Flickr Uploader to Backup Photos Automatically Flickr is an free (and paid) commercial online photo album. You can upload photos to Flickr and they offer 1TB generous storage even for the free account.
- [Personal Cloud Options to Backup Data and Photos](https://helloacm.com/personal-cloud-options-to-backup-data-and-photos/) - Personal Cloud Options to Backup Data and Photos With the advancement of technology, the harddisk capacity is getting bigger and bigger, so is our data. We have important data, and photos, vidoes, which should be regularly backup.
- [The Powerful Remote Cloud Desktop by Railway.Up (Visual Studio Code Everywhere)](https://helloacm.com/the-powerful-remote-cloud-desktop-by-railway-up-visual-studio-code-everywhere/) - Although, Railway.Up is ending their free $5 plan monthly soon, you can still benefit it by switching to Hobby Plan which costs $5 per month. Then, you can deploy a Visual Studio Code, so that you can code everywhere. Here is what you got - quite a powerful Cloud Desktop. In VS Code, you can The Powerful Remote Cloud Desktop by Railway.Up (Visual Studio Code Everywhere)
- [How to Transfer BTS Assets on BitShares Blockchain using Node.Js?](https://helloacm.com/how-to-transfer-bts-assets-on-bitshares-blockchain-using-node-js/) - Node/Javascript Function to Transfer BTS Assets on BitShares Blockchain To make a transfer on the BitShares blockchain, you need to create and broadcast a transfer operation. This operation includes details such as the sender, receiver, amount, and asset to transfer. Here is a basic example of how you can make a transfer with the bitsharesjs How to Transfer BTS Assets on BitShares Blockchain using Node.Js?
- [What is Grid Computing, and how is it different from Cloud Computing?](https://helloacm.com/what-is-grid-computing-and-how-is-it-different-from-cloud-computing/) - Grid computing and cloud computing are two methods of using interconnected computer resources to meet specific computational needs. However, they operate on different principles and serve different purposes. Grid Computing and Cloud Computing are two forms of distributed computing that have similarities, but they differ in many aspects. They both aim to provide users with What is Grid Computing, and how is it different from Cloud Computing?
- [NodeJs code to check the balance of a BTS account (BitShares Blockchain)](https://helloacm.com/nodejs-code-to-check-the-balance-of-a-bts-account-bitshares-blockchain/) - What is BitShares (BTS) Blockchain? BitShares (BTS) is a high-performance blockchain platform designed to serve as a decentralized exchange (DEX). It was introduced in 2014 as one of the earliest examples of Delegated Proof of Stake (DPoS) blockchain technology, pioneered by developer Daniel Larimer, who later co-founded blockchain projects such as Steem and EOS. BitShares NodeJs code to check the balance of a BTS account (BitShares Blockchain)
- [Teaching Kids Programming - Algorithms to Find Neither Minimum nor Maximum](https://helloacm.com/teaching-kids-programming-algorithms-to-find-neither-minimum-nor-maximum/) - Given an integer array nums containing distinct positive integers, find and return any number from the array that is neither the minimum nor the maximum value in the array, or -1 if there is no such number. Return the selected integer. Example 1: Input: nums = [3,2,1,4] Output: 2 Explanation: In this example, the minimum Teaching Kids Programming - Algorithms to Find Neither Minimum nor Maximum
- [Connect Tronlink Wallet using TronWeb in React](https://helloacm.com/connect-tronlink-wallet-using-tronweb-in-react/) - To implement Connect TronLink wallet using TronWeb in a React application, you can follow these steps: Install TronWeb Start by installing the TronWeb library in your React project. Open a terminal and navigate to your project directory, then run the following command: npm install tronweb Import TronWeb In the component where you want to implement Connect Tronlink Wallet using TronWeb in React
- [PHP Code to Redirect with 302 and a Referer](https://helloacm.com/php-code-to-redirect-with-302-and-a-referer/) - Some server URLs (images or videos) are protected with the referer link checks, so you cannot directly use the URLs by placing them in your website HTMLs. You will get 403 forbidden error, don't have permission to access url on this server. The Server shows Error: Denied by referer ACL. You can't directly modify the PHP Code to Redirect with 302 and a Referer
- [How to Offline Sign Transactions using C# for TRON blockchain?](https://helloacm.com/how-to-offline-sign-transactions-using-c-for-tron-blockchain/) - For creating and signing a transaction offline in TRON Blockchain using C#, you would need the private key for the account initiating the transaction and the address of the recipient. The steps involve creating the transaction object, signing it, and then it can be sent to the TRON network when you are online. Here's a How to Offline Sign Transactions using C# for TRON blockchain?
- [Best Tips from Microsoft to Prolong the Lifespan of Surface Laptop Battery](https://helloacm.com/best-tips-from-microsoft-to-prolong-the-lifespan-of-surface-laptop-battery/) - Microsoft has provided the official guidance on how to prolong the battery usage and lifespan on the booklets of its laptops. How to Prolong the Lifespan of Battery? All rechargeable batteries wear out with time. To maintain your battery health and performance, follow these tips: Several times a week, let your battery drain below 50% Best Tips from Microsoft to Prolong the Lifespan of Surface Laptop Battery
- [What is the advantages of using Azure Bicep rather than ARM?](https://helloacm.com/what-is-the-advantages-of-using-azure-bicep-rather-than-arm/) - Azure Bicep is a domain-specific language (DSL) and a declarative syntax for defining Azure infrastructure as code (IaC). It offers several advantages over the traditional Azure Resource Manager (ARM) templates: Simplified Syntax Bicep provides a cleaner and more concise syntax compared to ARM templates. It uses indentation-based formatting, which makes the code easier to read What is the advantages of using Azure Bicep rather than ARM?
- [Using CPU Intrinsics __builtin_ctz Function to Compute the Number of Trailing Zeros for a Integer (Binary)](https://helloacm.com/using-cpu-intrinsics-__builtin_ctz-function-to-compute-the-number-of-trailing-zeros-for-a-integer-binary/) - Consider the following C/C++ function to count the number of trailing zeros for a integer (in binary form): static inline int count_trailing_zeros(int value) { int n = 0; while ((value & (1 Using CPU Intrinsics __builtin_ctz Function to Compute the Number of Trailing Zeros for a Integer (Binary)
- [What is the CPU Intrinsics?](https://helloacm.com/what-is-the-cpu-intrinsics/) - #post_excerptWhat is the CPU Intrinsics?
- [What is the difference between 0.0.0.0 and 127.0.0.1 ?](https://helloacm.com/what-is-the-difference-between-0-0-0-0-and-127-0-0-1/) - These two IP addresses have different uses and meanings in the context of networking. Loopback 127.0.0.1 127.0.0.1 is known as the loopback address. This IP address is used to establish a network connection to the same device, usually used for testing. It's basically your own computer's way of referring to itself without needing to know What is the difference between 0.0.0.0 and 127.0.0.1 ?
- [Teaching Kids Programming - Algorithms to Minimize String Length (Hash Set)](https://helloacm.com/teaching-kids-programming-algorithms-to-minimize-string-length-hash-set/) - Given a 0-indexed string s, repeatedly perform the following operation any number of times: Choose an index i in the string, and let c be the character in position i. Delete the closest occurrence of c to the left of i (if any) and the closest occurrence of c to the right of i (if Teaching Kids Programming - Algorithms to Minimize String Length (Hash Set)
- [Teaching Kids Programming - Find Maximum Number of String Pairs (Brute Force Algorithm + Hash Set)](https://helloacm.com/teaching-kids-programming-find-maximum-number-of-string-pairs-brute-force-algorithm-hash-set/) - You are given a 0-indexed array words consisting of distinct strings. The string words[i] can be paired with the string words[j] if: The string words[i] is equal to the reversed string of words[j]. 0
- [Teaching Kids Programming - Find Maximum Number of String Pairs (Fixed-size Hash Set and Distinct Groups)](https://helloacm.com/teaching-kids-programming-find-maximum-number-of-string-pairs-fixed-size-hash-set-and-distinct-groups/) - You are given a 0-indexed array words consisting of distinct strings. The string words[i] can be paired with the string words[j] if: The string words[i] is equal to the reversed string of words[j]. 0
- [Blockchain Consensus Algorithm: What is Delegated Proof of Stake (DPoS) ?](https://helloacm.com/blockchain-consensus-algorithm-what-is-delegated-proof-of-stake-dpos/) - DPoS is a consensus mechanism that relies on a set of elected delegates who validate transactions and produce blocks on behalf of the network. These delegates are chosen through a voting process by the Blockchain token holders. The DPoS algorithm aims to provide fast transaction confirmations and scalability while maintaining decentralization. What is Delegated Proof Blockchain Consensus Algorithm: What is Delegated Proof of Stake (DPoS) ?
- [Best Advice for IT or Software Development Career](https://helloacm.com/best-advice-for-it-or-software-development-career/) - Whats the one and best piece of advice you would give to a person who is just starting his/her career in IT or Software Development? That is a great question. While there are many pieces of advice I could give, I believe the most important one is this: Never Stop Learning The IT and software Best Advice for IT or Software Development Career
- [Teaching Kids Programming - Maximum Number of Space Partitions by N Straight Lines (Pizza Cutting Problem, Math, DP, Recursion)](https://helloacm.com/teaching-kids-programming-maximum-number-of-space-partitions-by-n-straight-lines-pizza-cutting-problem-math-dp-recursion/) - Given a Pizza or Cake or whatever circle-shape like thingy, if we can cut N times, what is the maximum number of pieces that we can get? This is equivalent to Maximum Number of Space Partitions by N Straight Lines. Maximum Number of Space Partitions by N Straight Lines Recursive Formula to Compute the Max Teaching Kids Programming - Maximum Number of Space Partitions by N Straight Lines (Pizza Cutting Problem, Math, DP, Recursion)
- [What are possible reasons and solutions for error binding a socket?](https://helloacm.com/what-are-possible-reasons-and-solutions-for-error-binding-a-socket/) - When encountering an error binding a socket, the reason for the error can vary depending on the programming language (e.g. C/C++ or Python) or platform being used. However, here are some common reasons that may cause an error when binding a socket, along with possible solutions: To obtain a more specific reason for the error, What are possible reasons and solutions for error binding a socket?
- [TRON Blockchain: How to Send the USDT (TRC-20) Transacton using Python tronpy?](https://helloacm.com/tron-blockchain-how-to-send-the-usdt-trc-20-transacton-using-python-tronpy/) - How to Send the USDT (TRC-20) Transacton using Python tronpy? To send a USDT (Tether) transaction using TronPy, you can follow the steps outlined below: Install the necessary packages: Ensure you have TronPy and its dependencies installed in your Python environment. You can use pip to install them: pip install tronpy Import the required modules: TRON Blockchain: How to Send the USDT (TRC-20) Transacton using Python tronpy?
- [Teaching Kids Programming - Algorithms to Count Total Number of Colored Cells (Math/Recursion/Dynamic Programming)](https://helloacm.com/teaching-kids-programming-algorithms-to-count-total-number-of-colored-cells-math-recursion-dynamic-programming/) - There exists an infinitely large two-dimensional grid of uncolored unit cells. You are given a positive integer n, indicating that you must do the following routine for n minutes: At the first minute, color any arbitrary unit cell blue. Every minute thereafter, color blue every uncolored cell that touches a blue cell. Below is a Teaching Kids Programming - Algorithms to Count Total Number of Colored Cells (Math/Recursion/Dynamic Programming)
- [Teaching Kids Programming - Algorithms to Compute the Minimum String Length After Removing Substrings (Brute Force + Stack)](https://helloacm.com/teaching-kids-programming-algorithms-to-compute-the-minimum-string-length-after-removing-substrings-brute-force-stack/) - You are given a string s consisting only of uppercase English letters. You can apply some operations to this string where, in one operation, you can remove any occurrence of one of the substrings "AB" or "CD" from s. Return the minimum possible length of the resulting string that you can obtain. Note that the Teaching Kids Programming - Algorithms to Compute the Minimum String Length After Removing Substrings (Brute Force + Stack)
- [Two Year Anniversary of Joining Microsoft Research Cambridge as a Senior Software Engineer](https://helloacm.com/two-year-anniversary-of-joining-microsoft-research-cambridge-as-a-senior-software-engineer/) - End of this month, it will be exactly two years since I joined Microsoft Research Cambridge as a Senior Software Engineer. It also means that If I quit - I don't have to pay back the Sign-on Bonus (like many other big companies FAANG). On accepting the offer, the first month's pay-check has a large Two Year Anniversary of Joining Microsoft Research Cambridge as a Senior Software Engineer
- [C Implementation of the itoa Function (Integer to String Conversion)](https://helloacm.com/c-implementation-of-the-itoa-function-integer-to-string-conversion/) - The C standard library does not have an itoa function, but you can easily implement it by yourself. The itoa Function converts a integer value to its string representation which is char* in C. It supports different base system from 2 (Binary) to 36. Here is a simple implementation of itoa: #include #include C Implementation of the itoa Function (Integer to String Conversion)
- [C Implementation of the iota Function (Increasing Sequence)](https://helloacm.com/c-implementation-of-the-iota-function/) - The "iota" function is not a part of the standard C library. However, it's available in the C++ Standard Library, specifically in the header file, where it generates an increasing sequence. The equivalent functionality can be implemented in C. The following function, named iota, fills an array with an increasing sequence starting with a C Implementation of the iota Function (Increasing Sequence)
- [C Function of Fisher-Yates Implementation (Random Shuffling Algorithm)](https://helloacm.com/c-function-of-fisher-yates-implementation-random-shuffling-algorithm/) - The following is a random shuffling function in C. This uses the Fisher-Yates algorithm, which guarantees an unbiased shuffle. #include #include void shuffle(int *array, size_t n) { if (n > 1) { // Seed the random number generator to get different results each time srand(time(NULL)); size_t i; for (i = 0; i < C Function of Fisher-Yates Implementation (Random Shuffling Algorithm)
- [Is Azure Cli Command Synchronous or Asynchronous?](https://helloacm.com/is-azure-cli-command-synchronous-or-asynchronous/) - The Azure CLI (Command Line Interface) generally operates in a synchronous manner. This means when you issue a command, it will execute and return the output or an error before accepting the next command. You typically have to wait for the operation to complete before proceeding to the next step. That said, there are certain Is Azure Cli Command Synchronous or Asynchronous?
- [Teaching Kids Programming - Introduction to Units of Information (Byte, KB, MB, GB, TB, PB)](https://helloacm.com/teaching-kids-programming-introduction-to-units-of-information-byte-kb-mb-gb-tb-pb/) - Information is the lifeblood of the digital world. It flows through our computers, smartphones, and networks, shaping our modern lives in myriad ways. But how do we quantify this data? It is quantified using specific units of measurement, which are fundamental to the fields of computing and data management. These units, known as Bytes, Kilobytes Teaching Kids Programming - Introduction to Units of Information (Byte, KB, MB, GB, TB, PB)
- [Teaching Kids Programming - Remove Trailing Zeros From a String (strip, lstrip, rstrip)](https://helloacm.com/teaching-kids-programming-remove-trailing-zeros-from-a-string-strip-lstrip-rstrip/) - Given a positive integer num represented as a string, return the integer num without trailing zeros as a string. Example 1: Input: num = "51230100" Output: "512301" Explanation: Integer "51230100" has 2 trailing zeros, we remove them and return integer "512301". Example 2: Input: num = "123" Output: "123" Explanation: Integer "123" has no trailing Teaching Kids Programming - Remove Trailing Zeros From a String (strip, lstrip, rstrip)
- [Common Azure Kubernetes Services AKS Commands (Cheet Sheet)](https://helloacm.com/common-azure-kubernetes-services-aks-commands-cheet-sheet/) - Common Azure Kubernetes Services AKS Commands (Cheet Sheet) Kubernetes is a de-facto standard to deploy and manage applications in the cloud. The cloud apps are running in pods (containers). With Kubernetes, the pods can restart themselves if they crash. And the applications can auto scale themselve easily. This post shows some common commands using azure cli to manage the Kubernetes. FULL_CAPTIAL_LETTERS are parameters.
- [Teaching Kids Programming - Algorithms to Find Two Smallest Numbers (Buy Two Chocolates - Heap - Sorting - Linear Scan)](https://helloacm.com/teaching-kids-programming-algorithms-to-find-two-smallest-numbers-buy-two-chocolates/) - Here is the problem: You are given an integer array prices representing the prices of various chocolates in a store. You are also given a single integer money, which represents your initial amount of money. You must buy exactly two chocolates in such a way that you still have some non-negative leftover money. You would Teaching Kids Programming - Algorithms to Find Two Smallest Numbers (Buy Two Chocolates - Heap - Sorting - Linear Scan)
- [Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Space Optimisation Bottom Up Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-find-max-number-of-uncrossed-lines-longest-common-subsequence-via-space-optimisation-bottom-up-dynamic-programming-algorithm/) - You are given two integer arrays nums1 and nums2. We write the integers of nums1 and nums2 (in the order they are given) on two separate horizontal lines. We may draw connecting lines: a straight line connecting two numbers nums1[i] and nums2[j] such that: nums1[i] == nums2[j], and the line we draw does not intersect Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Space Optimisation Bottom Up Dynamic Programming Algorithm
- [Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Bottom Up Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-find-max-number-of-uncrossed-lines-longest-common-subsequence-via-bottom-up-dynamic-programming-algorithm/) - You are given two integer arrays nums1 and nums2. We write the integers of nums1 and nums2 (in the order they are given) on two separate horizontal lines. We may draw connecting lines: a straight line connecting two numbers nums1[i] and nums2[j] such that: nums1[i] == nums2[j], and the line we draw does not intersect Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Bottom Up Dynamic Programming Algorithm
- [Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Top Down Dynamic Programming Algorithm (Recursion + Memoization)](https://helloacm.com/teaching-kids-programming-find-max-number-of-uncrossed-lines-via-top-down-dynamic-programming-algorithm-recursion-memoziation/) - You are given two integer arrays nums1 and nums2. We write the integers of nums1 and nums2 (in the order they are given) on two separate horizontal lines. We may draw connecting lines: a straight line connecting two numbers nums1[i] and nums2[j] such that: nums1[i] == nums2[j], and the line we draw does not intersect Teaching Kids Programming - Find Max Number of Uncrossed Lines (Longest Common Subsequence) via Top Down Dynamic Programming Algorithm (Recursion + Memoization)
- [Bottom Up Dynamic Algorithm to Compute the Longest Common Subsequence (C++)](https://helloacm.com/dynamic-algorithm-to-compute-the-longest-common-subsequence/) - Bottom Up Dynamic Algorithm to Compute the Longest Common Subsequence (C++) Given two strings text1 and text2, return the length of their longest common subsequence. A subsequence of a string is a new string generated from the original string with some characters(can be none) deleted without changing the relative order of the remaining characters. (eg, "ace" is a subsequence of "abcde" while "aec" is not). A
- [Teaching Kids Programming - Count Number of Ways to Walk in a Grid using Dynamic Programming or Combination](https://helloacm.com/teaching-kids-programming-count-number-of-ways-to-walk-in-a-grid-using-dynamic-programming-or-combination/) - Combination (Math) and Dynamic Programming Algorithms to Count Ways to Walk in a Grid Given a grid with n*m squares (m horizontal squares and n vertical squares), and suppose you are at the top-left square (noted X), count the number of ways to get to the bottom-right corner (noted T) square if you can only walk 1 step east or south a a time. ------- |X| | | -------
- [Teaching Kids Programming - Probability Matrix of Walking in a Grid (Unique Paths)](https://helloacm.com/teaching-kids-programming-probability-matrix-of-walking-in-a-grid-unique-paths/) - On a grid that each step, we can only walk east and south (each 50%), we want to find out the probability of reaching a position. This is similar to Day 99 where we talked about the number of unique paths using Dynamic Programming or Math Combination. We can compute the probability from the top Teaching Kids Programming - Probability Matrix of Walking in a Grid (Unique Paths)
- [How Many Ways from A to C via B? Counting the Unique Paths Walking in a Grid](https://helloacm.com/how-many-ways-from-a-to-c-via-b/) - How Many Ways from A to C via B? Counting the Unique Paths Walking in a Grid
- [SteemTools Update: Adding Account Witness Data, Option to Save Key and Bug Fixes](https://helloacm.com/steemtools-update-adding-account-witness-data-option-to-save-key-and-bug-fixes/) - SteemTools Update: Adding Account Witness Data, Option to Save Key and Bug Fixes Introduction to SteemTools SteemTools is a Chrome Extension that aims to provide useful tools and data for Steem/SteemIt Users. SteemTools Open Source Github: https://github.com/DoctorLai/SteemTools/ Previous Versions SteemTools v0.0.9 Update: Sending Money to Multiple Addresses! SteemTools v0.0.8 Update: Witness Lookup SteemTools v0.0.7: Query Powerdown Status, Add SBDS API Server (Backend), Fix Voting Power SteemTools v0.0.6 Check
- [Solve the Knight Tour in Python (Breadth First Search Algorithm)](https://helloacm.com/knight-tour-in-python/) - The implementation is straightforward, using Python list as a Queue, which expands the current location with its next moves. In each iteration, a node is popped from the queue until the destination is arrived. The repeated-moves are abandoned by using a list to record the previous history moves. To simplify the implementation, every time, the current move history array is also pushed into the queue. This is clearly a BFS (Breadth First Search) algorithm, which will guarantee the first route found is a shortest one.
- [Teaching Kids Programming - Back Tracking Algorithm to Find the The Knight’s Tour Path (Recursive Depth First Search)](https://helloacm.com/teaching-kids-programming-back-tracking-algorithm-to-find-the-the-knights-tour-path-recursive-depth-first-search/) - Teaching Kids Programming - Back Tracking Algorithm to Find the The Knight’s Tour Path (Recursive Depth First Search) Given two positive integers m and n which are the height and width of a 0-indexed 2D-array board, a pair of positive integers (r, c) which is the starting position of the knight on the board. Your task is to find an order of movements for the knight, in a manner that every cell of
- [Explaining to My Son: What Does a Software Engineer Do? What is it like to be a Software Engineer](https://helloacm.com/explaining-to-my-son-what-does-a-software-engineer-do-what-is-it-like-to-be-a-software-engineer/) - My son was curious and asked me: "Dad, what do you do as a software engineer?" I was at that time in the car with him, and working on a laptop, as I still had some work to finish on Friday afternoon. I had a Pull Request (PR) open for 2 months, and it was Explaining to My Son: What Does a Software Engineer Do? What is it like to be a Software Engineer
- [Teaching Kids Programming - Maximum Number of Vowels in a Substring of Given Length (Sliding Window Algorithm)](https://helloacm.com/teaching-kids-programming-maximum-number-of-vowels-in-a-substring-of-given-length-sliding-window-algorithm/) - Given a string s and an integer k, return the maximum number of vowel letters in any substring of s with length k. Vowel letters in English are 'a', 'e', 'i', 'o', and 'u'. Example 1: Input: s = "abciiidef", k = 3 Output: 3 Explanation: The substring "iii" contains 3 vowel letters. Example 2: Maximum Number of Vowels in a Substring of Given Length (Sliding Window Algorithm)
- [Introduction to Passive Income(s)](https://helloacm.com/introduction-to-passive-incomes/) - Often, you need some passive income(s) to achieve the FIRE = Finance Independence, Retire Early. Passive income refers to the income that investors can earn without much time and effort. Passive income can come from different investments such as stocks, bonds, real estate, funds, etc. Passive income is the most ideal income method for investors, Introduction to Passive Income(s)
- [Function to Compute the Average Salary Excluding the Minimum and Maximum Salary](https://helloacm.com/function-to-compute-the-average-salary-excluding-the-minimum-and-maximum-salary/) - Function to Compute the Average Salary Excluding the Minimum and Maximum Salary The traditional implementation is usually based on a loop, that will store the maximum, minimum, and the sum of the array. But in modern C++, you don't need to do a loop. Instead, you can accomplish these tasks using min_element, max_element, and the std::accmulate function.
- [Teaching Kids Programming - Compute Average of an Array Excluding Max and Min](https://helloacm.com/teaching-kids-programming-compute-average-of-an-array-excluding-max-and-min/) - You are given an array of unique integers salary where salary[i] is the salary of the ith employee. Return the average salary of employees excluding the minimum and maximum salary. Answers within 10-5 of the actual answer will be accepted. Example 1: Input: salary = [4000,3000,1000,2000] Output: 2500.00000 Explanation: Minimum salary and maximum salary are Teaching Kids Programming - Compute Average of an Array Excluding Max and Min
- [GoLang: Compute the Hamming Distance](https://helloacm.com/golang-compute-the-hamming-distance/) - The Hamming distance between two integers is the number of positions at which the corresponding bits are different. Given two integers x and y, return the Hamming distance between them. Example 1: Input: x = 1, y = 4 Output: 2 Explanation: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑ The
- [Teaching Kids Programming - Minimum Bit Flips to Convert Number (Hamming Distance)](https://helloacm.com/teaching-kids-programming-minimum-bit-flips-to-convert-number-hamming-distance/) - A bit flip of a number x is choosing a bit in the binary representation of x and flipping it from either 0 to 1 or 1 to 0. For example, for x = 7, the binary representation is 111 and we may choose any bit (including any leading zeros not shown) and flip it. Teaching Kids Programming - Minimum Bit Flips to Convert Number (Hamming Distance)
- [How to Sort List by Hamming Weight in C++?](https://helloacm.com/how-to-sort-list-by-hamming-weight-in-c/) - C++ Custom sort by hamming weight
- [Teaching Kids Programming - Sort List by Hamming Weight](https://helloacm.com/teaching-kids-programming-sort-list-by-hamming-weight/) - Teaching Kids Programming - Sort List by Hamming Weight
- [Efficient Hamming Distance Algorithms Between Two Integers in C++](https://helloacm.com/hamming-distance-between-two-integers/) - Hamming Distance between Two Integers: The Hamming distance between two integers is the number of positions at which the corresponding bits are different. Efficient Hamming Distance Algorithms Between Two Integers in C++
- [The Hamming Distance Implementation in Javascript](https://helloacm.com/the-hamming-distance-implementation-in-javascript/) - The Hamming Distance Implementation in Javascript The Hamming Distance is the number of different symbols between two strings/numbers (equal length). It can be also considered as the number of changes required to convert from one input to another.
- [Compute the Total Hamming Distance between All Pairs of Integers](https://helloacm.com/compute-the-total-hamming-distance-between-all-pairs-of-integers/) - Compute the Total Hamming Distance between All Pairs of Integers We need O(N^2) to iterate over each possible pair of integers, then we can add up the hamming distance with O(logV) complexity. The overall complexity is O(N^2LogV). We can use the std::bitset to perform the counting the set bits.
- [Teaching Kids Programming - Compute the Hamming Distance of Two Integers](https://helloacm.com/teaching-kids-programming-compute-the-hamming-distance-of-two-integers/) - Algorithms to Compute the Hamming Distance of two integers.
- [Teaching Kids Programming - Sum the Multiples in a Range using Venn Diagram (Math and Bruteforce Algorithm)](https://helloacm.com/teaching-kids-programming-sum-the-multiples-in-a-range-using-venn-diagram-math-and-bruteforce-algorithm/) - Given a positive integer n, find the sum of all integers in the range [1, n] inclusive that are divisible by 3, 5, or 7. Return an integer denoting the sum of all numbers in the given range satisfying the constraint. Example 1: Input: n = 7 Output: 21 Explanation: Numbers in the range [1, Teaching Kids Programming - Sum the Multiples in a Range using Venn Diagram (Math and Bruteforce Algorithm)
- [Teaching Kids Programming - Minimum Amount of Time to Fill Cups (Greedy Simulation Algorithm and Math)](https://helloacm.com/teaching-kids-programming-minimum-amount-of-time-to-fill-cups-greedy-simulation-algorithm-and-math/) - You have a water dispenser that can dispense cold, warm, and hot water. Every second, you can either fill up 2 cups with different types of water, or 1 cup of any type of water. You are given a 0-indexed integer array amount of length 3 where amount[0], amount[1], and amount[2] denote the number of Teaching Kids Programming - Minimum Amount of Time to Fill Cups (Greedy Simulation Algorithm and Math)
- [Teaching Kids Programming - How to Design a Random Sudoku? Algorithm to Design a Random Sudoku](https://helloacm.com/teaching-kids-programming-algorithm-to-design-a-random-sudoku/) - Teaching Kids Programming - How to Design a Random Sudoku? Algorithm to Design a Random Sudoku Given a Sudoku, we can use the Depth First Search Algorithm, Iterate Deepening Search Algorithm or Breadth First Search Algorithm to find solution(s). On the opposite, if we are to design an algorithm that would generate a valid sudoku, we need to clarify the following: Does the Sudoku have to be in a solvable state?
- [Teaching Kids Programming - Find the Width of Columns of a Grid (Zip Function, Matrix Transpose)](https://helloacm.com/teaching-kids-programming-find-the-width-of-columns-of-a-grid-zip-function-matrix-transpose/) - You are given a 0-indexed m x n integer matrix grid. The width of a column is the maximum length of its integers. For example, if grid = [[-10], [3], [12]], the width of the only column is 3 since -10 is of length 3. Return an integer array ans of size n where ans[i] Teaching Kids Programming - Find the Width of Columns of a Grid (Zip Function, Matrix Transpose)
- [Teaching Kids Programming - Form Smallest Number From Two Digit Arrays (Set Intersection)](https://helloacm.com/teaching-kids-programming-form-smallest-number-from-two-digit-arrays/) - Given two arrays of unique digits nums1 and nums2, return the smallest number that contains at least one digit from each array. Example 1: Input: nums1 = [4,1,3], nums2 = [5,7] Output: 15 Explanation: The number 15 contains the digit 1 from nums1 and the digit 5 from nums2. It can be proven that 15 Teaching Kids Programming - Form Smallest Number From Two Digit Arrays (Set Intersection)
- [Teaching Kids Programming - Closest Binary Search Tree Value (Iterative and Recursive Inorder Traversal Algorithm)](https://helloacm.com/teaching-kids-programming-closest-binary-search-tree-value-iterative-and-recursive-inorder-traversal-algorithm/) - Given the root of a binary search tree and a target value, return the value in the BST that is closest to the target. If there are multiple answers, print the smallest. Example 1: Input: root = [4,2,5,1,3], target = 3.714286 Output: 4 Example 2: Input: root = [1], target = 4.428571 Output: 1 Constraints: Teaching Kids Programming - Closest Binary Search Tree Value (Iterative and Recursive Inorder Traversal Algorithm)
- [Teaching Kids Programming - Closest Binary Search Tree Value (Recursion + Inorder Traversal + Binary Search Algorithm)](https://helloacm.com/teaching-kids-programming-closest-binary-search-tree-value-recursion-inorder-binary-search-algorithm/) - Given the root of a binary search tree and a target value, return the value in the BST that is closest to the target. If there are multiple answers, print the smallest. Example 1: Input: root = [4,2,5,1,3], target = 3.714286 Output: 4 Example 2: Input: root = [1], target = 4.428571 Output: 1 Constraints: Teaching Kids Programming - Closest Binary Search Tree Value (Recursion + Inorder Traversal + Binary Search Algorithm)
- [Free Giveaway: Google Adwords 400 GBP Ads Credit](https://helloacm.com/free-giveaway-google-adwords-400-gbp-ads-credit/) - Long time ago, I have tried Google Adwords with some free credit from Google, but for some reasons, it didn't work out well. Now, I have received 400 GBP worth of Google Ads (or Adword) Credit, please contact me if you would like 400 GBP Credit to start trying Google Adwords (First Come First Served). Free Giveaway: Google Adwords 400 GBP Ads Credit
- [Teaching Kids Programming - Find the Longest Balanced Substring of a Binary String](https://helloacm.com/teaching-kids-programming-find-the-longest-balanced-substring-of-a-binary-string/) - You are given a binary string s consisting only of zeroes and ones. A substring of s is considered balanced if all zeroes are before ones and the number of zeroes is equal to the number of ones inside the substring. Notice that the empty substring is considered a balanced substring. Return the length of Teaching Kids Programming - Find the Longest Balanced Substring of a Binary String
- [4 Reasons to Upgrade the CloudFlare Free Plan to Pro](https://helloacm.com/4-reasons-to-upgrade-the-cloudflare-free-plan-to-pro/) - The CloudFlare Free Plan is good, but Pro offers more at currently $25 per month or $20 if paid yearly. Here are 4 reasons that you might consider upgrading to Pro. Your website is generating revenue on a monthly basis Enhancing the security of your website is essential for generating revenue. The Pro plan offers 4 Reasons to Upgrade the CloudFlare Free Plan to Pro
- [Teaching Kids Programming - Distinct Prime Factors of Product of Array](https://helloacm.com/teaching-kids-programming-distinct-prime-factors-of-product-of-array/) - Given an array of positive integers nums, return the number of distinct prime factors in the product of the elements of nums. Note that: A number greater than 1 is called prime if it is divisible by only 1 and itself. An integer val1 is a factor of another integer val2 if val2 / val1 Teaching Kids Programming - Distinct Prime Factors of Product of Array
- [Teaching Kids Programming - K Items With the Maximum Sum](https://helloacm.com/teaching-kids-programming-k-items-with-the-maximum-sum/) - There is a bag that consists of items, each item has a number 1, 0, or -1 written on it. You are given four non-negative integers numOnes, numZeros, numNegOnes, and k. The bag initially contains: numOnes items with 1s written on them. numZeroes items with 0s written on them. numNegOnes items with -1s written on Teaching Kids Programming - K Items With the Maximum Sum
- [Teaching Kids Programming - Two Pointer Algorithm to Rescue People in Rocketship](https://helloacm.com/teaching-kids-programming-two-pointer-algorithm-to-rescue-people-in-rocketship/) - You are given a list of integers weights representing peoples' weights and an integer limit representing the weight limit of one rocket ship. Each rocketship can take at most two people. Return the minimum number of rocket ships it would take to rescue everyone to Mars. Constraints n ≤ 100,000 where n is the length Teaching Kids Programming - Two Pointer Algorithm to Rescue People in Rocketship
- [Teaching Kids Programming - URL Simply Explained](https://helloacm.com/teaching-kids-programming-url-simply-explained/) - A Uniform Resource Locator (URL) is a string of characters used to identify and locate resources on the Internet. The components of a URL include the protocol, domain name, port number, path, query parameters, and fragment identifier. Let's take a closer look at each of these components: Protocol: In the given URL, the protocol is Teaching Kids Programming - URL Simply Explained
- [How to Exchange Data Between Processes in Linux?](https://helloacm.com/how-to-exchange-data-between-processes-in-linux/) - In Linux, there are several ways to exchange data between processes (Inter Process Communication IPC). Here are some of the commonly used methods: Process Sharing/Exchanging Data using Pipes Pipes are a simple way to exchange data between processes. A pipe is a unidirectional communication channel that allows one process to send data to another process. How to Exchange Data Between Processes in Linux?
- [How to Enable and Monitor the Slow Logs for PHP-FPM?](https://helloacm.com/how-to-enable-and-monitor-the-slow-logs-for-php-fpm/) - The CPU High Usage (Spikes) may be caused by a few factors: sudden large traffic, incorrect configurations, or slow queries (or bugs in the code). In the following, it shows the CPU spikes on a quad-core server which has 6GB RAM. How to Enable and Monitor the Slow Logs for PHP-FPM? PHP-FPM (FastCGI Process Manager) How to Enable and Monitor the Slow Logs for PHP-FPM?
- [Teaching Kids Programming - Split With Minimum Sum (Heap, Priority Queue)](https://helloacm.com/teaching-kids-programming-split-with-minimum-sum-heap-priority-queue/) - Given a positive integer num, split it into two non-negative integers num1 and num2 such that: The concatenation of num1 and num2 is a permutation of num. In other words, the sum of the number of occurrences of each digit in num1 and num2 is equal to the number of occurrences of that digit in Teaching Kids Programming - Split With Minimum Sum (Heap, Priority Queue)
- [Teaching Kids Programming - Split With Minimum Sum (Sort the Digits, Greedy)](https://helloacm.com/teaching-kids-programming-split-with-minimum-sum-sort-the-digits-greedy/) - Given a positive integer num, split it into two non-negative integers num1 and num2 such that: The concatenation of num1 and num2 is a permutation of num. In other words, the sum of the number of occurrences of each digit in num1 and num2 is equal to the number of occurrences of that digit in Teaching Kids Programming - Split With Minimum Sum (Sort the Digits, Greedy)
- [Teaching Kids Programming - Split With Minimum Sum (Bucket Sorting Algorithm)](https://helloacm.com/teaching-kids-programming-split-with-minimum-sum-bucket-sorting-algorithm/) - Given a positive integer num, split it into two non-negative integers num1 and num2 such that: The concatenation of num1 and num2 is a permutation of num. In other words, the sum of the number of occurrences of each digit in num1 and num2 is equal to the number of occurrences of that digit in Teaching Kids Programming - Split With Minimum Sum (Bucket Sorting Algorithm)
- [Can the Kids Beat This Simple Chinese Chess AI?](https://helloacm.com/can-the-kids-beat-this-simple-chinese-chess-ai/) - A Chinese Chess is a two player zero sum game. It is similar to Chess but have a larger board (10x9 where the middle is the river). Long time ago, I have designed and implemented a Chinese Chess program, which was written using Delphi on Windows. The first code was written was about 2006 see Can the Kids Beat This Simple Chinese Chess AI?
- [Teaching Kids Programming - Converting Breadth First Search Algorithm to Iterative Preorder Order (Depth First Search) for a Binary Tree](https://helloacm.com/teaching-kids-programming-converting-breadth-first-search-algorithm-to-iterative-preorder-order-depth-first-search-for-a-binary-tree/) - Teaching Kids Programming - Converting Breadth First Search Algorithm to Iterative Preorder Order (Depth First Search) for a Binary Tree Given a Binary Tree: The level-by-level order can be done via Breadth First Search Algorithm where we use a queue (e.g. double-ended queue). The order is 4-85-016 for the above binary tree. The standard BFS code for performing a level-by-level order in a given binary tree (root): def bfs(root): if root is None: return q
- [Teaching Kids Programming - Passing Item From One End to Another (Who Has It After N Seconds: Math/Simulation)](https://helloacm.com/teaching-kids-programming-passing-item-from-one-end-to-another-who-has-it-after-n-seconds/) - Teaching Kids Programming - Passing Item From One End to Another (Who Has It After N Seconds: Math/Simulation)There are n people standing in a line labeled from 1 to n. The first person in the line is holding a pillow initially. Every second, the person holding the pillow passes it to the next person standing in the line. Once the pillow reaches the end of the line, the direction changes, and people
- [Introduction to Dry Testing in Software Engineering](https://helloacm.com/introduction-to-dry-testing-in-software-engineering/) - Introduction to Dry Testing in Software Engineering In general, software engineers use a combination of testing approaches to ensure that software is reliable and performs as expected. This includes both manual testing and automated testing, as well as different types of testing, such as functional testing, performance testing, and security testing. The specific testing approach used depends on the project's requirements, complexity,
- [How to Obtain the Second Distinct Highest Record using SQL?](https://helloacm.com/sql-coding-exercise-second-highest-salary/) - The second largest number is always smaller than the largest number. We use a inner SQL to get the maximum salary and we just need to get the largest number that is smaller than this largest number. Question: Write a SQL query to get the second highest salary (distinct) from the Employee table. +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+--------+ For example, given the above Employee table, the second highest salary is 200. If there is
- [Nth Highest Distinct Record using SQL](https://helloacm.com/sql-coding-exercise-nth-highest-salary/) - Nth Highest Distinct Record using SQL Write a SQL query to get the nth highest distinct salary from the Employee table. +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+--------+ For example, given the above Employee table, the nth highest salary where n = 2 is 200.
- [How to Use the sys.settrace to Debug in Python?](https://helloacm.com/how-to-use-the-sys-settrace-to-debug-in-python/) - How to Use the sys.settrace to Debug in Python?sys.settrace is a built-in function in Python's sys module. It allows you to set a trace function that is called by the Python interpreter for every line of code that is executed. The trace function can be used to monitor the execution of Python code, inspect variables and control flow, and even modify the code
- [Teaching Kids Programming - Compute the Area of Square in Square (Similar Triangles, Math, Geometry)](https://helloacm.com/teaching-kids-programming-compute-the-area-of-square-in-square-similar-triangle-math-geometry/) - The shorter line segment on each side is 1, and the longer segment is 2. Thus the big square area is 3x3=9 Compute the Area of Square in Square (Math, Geometry) We want to calculate the "square" EFGH. The Shape of EFGH is a square. Angle BAE+EAD=90, Triangle ABF is similar to Triangle DAE, thus, Teaching Kids Programming - Compute the Area of Square in Square (Similar Triangles, Math, Geometry)
- [How to Compute the Projection Area of 3D Shapes?](https://helloacm.com/how-to-compute-the-projection-area-of-3d-shapes/) - How to Compute the Projection Area of 3D Shapes? This problem may seem hard, but it is actually easy to solve. The X-Y view area can be counted by the non-zero cubes, which is the the input array. Then, Y-Z view will be the sum of the maximum of each row and similary X-Z view will be the sum of the maximum for each column.
- [How to Compute the Surface Area of 3D Shapes (Cubes Placed on Grid Cells)?](https://helloacm.com/how-to-compute-the-surface-area-of-3d-shapes-cubes-placed-on-grid-cells/) - How to Compute the Surface Area of 3D Shapes (Cubes Placed on Grid Cells)? When we place a single cube on the grid, the surface is 6 (4x1+2), when we place a 2x1 cubes on the grid, the surface is 10 - which is 4x2+2. That is, there is only 1 top and 1 bottom, but 4 times of the number cubes that stacked together - as the connected parts (vertically) are hidden.
- [Teaching Kids Programming - Algorithms to Count Surface Area of 3D Shapes (Geometry and Math)](https://helloacm.com/teaching-kids-programming-algorithms-to-count-surface-area-of-3d-shapes-geometry-and-math/) - Teaching Kids Programming - Surface Area of 3D ShapesYou are given an n x n grid where you have placed some 1 x 1 x 1 cubes. Each value v = grid[i][j] represents a tower of v cubes placed on top of cell (i, j). After placing these cubes, you have decided to glue any directly adjacent cubes to each other, forming several Algorithms to Count Surface Area of 3D Shapes (Geometry and Math)
- [Python Numpy Memory Leaks Due to PYTHONMALLOC (C Python and Address Sanitizer)](https://helloacm.com/python-numpy-memory-leaks-due-to-pythonmalloc-c-python-and-address-sanitizer/) - A simple C/C++ calling Python script to import numpy package will simply be reported Leaking Memory: include int main() { Py_Initialize(); PyRun_SimpleString("import numpy"); Py_Finalize(); return 0; } This will be caught leaking memory by Address Sanitizer which is a tool to inspect the potential memory leaks and other memory issues such as Heap Overflow, Python Numpy Memory Leaks Due to PYTHONMALLOC (C Python and Address Sanitizer)
- [Teaching Kids Programming - Geometry of Triangle Area and Side Law](https://helloacm.com/teaching-kids-programming-geometry-of-triangle-area-and-side-law/) - Teaching Kids Programming - Geometry of Triangle Area and Side Law We know the area of triangle can be computed as the half of one side multiplied by the height of it. This can be seen from the above - the rectangle area is a * b where a and b are the length of two sides. And a Parallelogram can be transformed from a corresponding
- [Teaching Kids Programming - Binary Tree Zigzag Level Order Traversal (via Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-binary-tree-zigzag-level-order-traversal-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Binary Tree Zigzag Level Order Traversal (via Breadth First Search Algorithm) Given the root of a binary tree, return the zigzag level order traversal of its nodes' values. (i.e., from left to right, then right to left for the next level and alternate between). 3 / \ 9 20 / \ 15 7 Example 1: Input: root = [3,9,20,null,null,15,7] Output: [[3],[20,9],[15,7]] Example 2: Input: root =
- [Teaching Kids Programming - Minimum Distance Between Binary Search Tree (BST) Nodes (Recursive Depth First Search + In-Order Traversal Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-distance-between-bst-nodes-recursive-depth-first-search-in-order-traversal-algorithm/) - Given the root of a Binary Search Tree (BST), return the minimum difference between the values of any two different nodes in the tree. Example 1: Input: root = [4,2,6,1,3] Output: 1 Example 2: Input: root = [1,0,48,null,null,12,49] Output: 1 Constraints: The number of nodes in the tree is in the range [2, 100]. 0 Teaching Kids Programming - Minimum Distance Between Binary Search Tree (BST) Nodes (Recursive Depth First Search + In-Order Traversal Algorithm)
- [How can i make money using Crypto?](https://helloacm.com/how-can-i-make-money-using-cryptos/) - Here are a few ways that you can make money using Cryptos (Cryptocurrency). Not a Financial Advice in any way. Cryptos are ideal world for earning some source/methods of passive incomes. Buy and Hold or HODL HODL: Buy and Hold: One of the most popular ways to make money with cryptocurrency is to buy and How can i make money using Cryptos?
- [Teaching Kids Programming - Count Distinct Numbers on Board (Recursion, Simulation, Math, Hash Set)](https://helloacm.com/teaching-kids-programming-count-distinct-numbers-on-board/) - Teaching Kids Programming - Count Distinct Numbers on Board You are given a positive integer n, that is initially placed on a board. Every day, for 109 days, you perform the following procedure: For each number x present on the board, find all numbers 1
- [Teaching Kids Programming - Algorithms to Take Max/Min, Square Root, and Compute Sum after K times (Heap, Sort, Index)](https://helloacm.com/teaching-kids-programming-algorithms-to-take-max-min-from-numbers-array-and-push-square-root-back/) - Algorithms to Take Max/Min from Numbers Array and Push Square Root Back Teaching Kids Programming - Algorithms to Take Max/Min, Square Root, and Compute Sum after K times (Heap, Sort, Index) Take Gifts From the Richest Pile You are given an integer array gifts denoting the number of gifts in various piles. Every second, you do the following: Choose the pile with the maximum number of gifts. If there is more than one pile with the maximum number of gifts, choose any. Leave behind the floor
- [Teaching Kids Programming - The Find Function/Algorithm for a List/Tuple in Python (Find vs Index)](https://helloacm.com/teaching-kids-programming-the-find-function-algorithm-for-a-list-tuple-in-python-find-vs-index/) - Python is a powerful programming language that provides a variety of functions to help you work with data. Two of the most commonly used functions are the find and index functions. Both of these functions can be used to search for a specific substring in a string (the underlying algorithm to find substring in a Teaching Kids Programming - The Find Function/Algorithm for a List/Tuple in Python (Find vs Index)
- [Teaching Kids Programming - How to Design a Random Maze? Random Maze Generation Algorithm](https://helloacm.com/teaching-kids-programming-maze-design-algorithm-how-to-generate-a-random-maze/) - Teaching Kids Programming - Maze Design Algorithm - How to Generate a Random Maze? Given a Maze, we can use Breadth First Search, Depth First Search, or Iterate Deepening Search Algorithm to Find an Nearest Exit (if there is any) to an entry. We have talked about these three algorithms: Teaching Kids Programming – Nearest Exit from Entrance in Maze via Iterative Deepening Search Algorithm (IDS) Teaching Kids Programming How to Design a Random Maze? Random Maze Generation Algorithm
- [Teaching Kids Programming - Algorithms to Separate the Digits of a Number Array](https://helloacm.com/teaching-kids-programming-algorithms-to-separate-the-digits-of-a-number-array/) - Given an array of positive integers nums, return an array answer that consists of the digits of each integer in nums after separating them in the same order they appear in nums. To separate the digits of an integer is to get all the digits it has in the same order. For example, for the Teaching Kids Programming - Algorithms to Separate the Digits of a Number Array
- [What Are The Benefits of SAP Business Technology Platform for Businesses: Industry Experts' Opinion](https://helloacm.com/what-are-the-benefits-of-sap-business-technology-platform-for-businesses-industry-experts-opinion/) - Most companies now have highly complex IT landscapes characterized by many different manufacturers, interfaces, and data types. Combining these and making the resulting data usable is one of the most significant challenges for the IT departments of modern companies. To meet this challenge, SAP offers the Business Technology Platform (BTP for short) as support. What What Are The Benefits of SAP Business Technology Platform for Businesses: Industry Experts' Opinion
- [Euclid's theorem - Proof of Unlimited Prime Numbers](https://helloacm.com/euclids-theorem-proof-of-unlimited-prime-numbers/) - A prime number is defined as a positive integer that can only be divisible by 1 and itself. The proof that there are infinitely many prime numbers is as follows: Proof: Suppose there are finite prime numbers, let them be p1, p2, p3,...,pn, then their product N=p1p2p3...pn, since N is a positive integer, N+1 is Euclid's theorem - Proof of Unlimited Prime Numbers
- [Teaching Kids Programming - Algorithms to Solve a Min Max Binary Tree Game (Queue, Recursion, In-place)](https://helloacm.com/teaching-kids-programming-algorithms-to-solve-a-min-max-binary-tree-game/) - You are given a 0-indexed integer array nums whose length is a power of 2. Apply the following algorithm on nums: Let n be the length of nums. If n == 1, end the process. Otherwise, create a new 0-indexed integer array newNums of length n / 2. For every even index i where 0 Teaching Kids Programming - Algorithms to Solve a Min Max Binary Tree Game
- [Teaching Kids Programming - The Endless Iterator Cycle (from itertools) in Python](https://helloacm.com/teaching-kids-programming-the-endless-iterator-cycle-from-itertools-in-python/) - The cycle function from itertools in Python provides an endless iterator given a iterables. For example, one possible implementation of such is as follows. The first time we go through the given iterables, we save the elements in a copy, and then we can yield the elements from the saved copy endlessly... def cycle(x): a Teaching Kids Programming - The Endless Iterator Cycle (from itertools) in Python
- [Introduction to Order Book, HFT (High Frequency Trading) and Simple Strategy: Buy Low Sell High](https://helloacm.com/introduction-to-order-book-hft-high-frequency-trading-and-simple-strategy-buy-low-sell-high/) - Introduction to Order Book, HFT (High Frequency Trading) and Simple Strategy: Buy Low Sell High What is an Order Book? In stock market or cryptocurrency exchange, we often see the following table of number entries which is known as "Order Book". The red lines are selling orders while the green ones are buying orders. The Selling orders are on the top and the Buying orders are on the bottom. The
- [Teaching Kids Programming - Algorithms to Compute the Alternating Digit Sum](https://helloacm.com/teaching-kids-programming-algorithms-to-compute-the-alternating-digit-sum/) - Teaching Kids Programming - Algorithms to Compute the Alternating Digit Sum You are given a positive integer n. Each digit of n has a sign according to the following rules: The most significant digit is assigned a positive sign. Each other digit has an opposite sign to its adjacent digits. Return the sum of all digits with their corresponding sign. Example 1: Input: n = 521
- [The C Function to Iterate Over a PyList (PyObject) and Print Each Item (Python C API: PyObject_GetIter)](https://helloacm.com/the-c-function-to-iterate-over-a-pylist-pyobject-and-print-each-item-python-c-api-pyobject_getiter/) - The C Function to Iterate Over a PyList (PyObject) and Print Each Item (Python C API: PyObject_GetIter) We can call Python code in C via the Python C API. And we want to be able to go over the items for a PyList that is type of PyObject, for example, the following "path" variable is type of PyObject, and we can insert/append item(s) to it via PyList_Append. PyObject* path = PySys_GetObject((char*)"path"); PyList_Append(path,
- [How to Check if a Binary Tree is Balanced (Top-down and Bottom-up Recursion)?](https://helloacm.com/how-to-check-if-a-binary-tree-is-balanced-top-down-and-bottom-up-recursion/) - How to Check if a Binary Tree is Balanced (Top-down and Bottom-up Recursion)? Most of the Binary tree problems can be tackled by Recursion - because the tree itself is defined recursively. Depending on the directions, we can perform recursions either top-down (from the root to the leaves) or the bottom-up (from the leaves to the root). In this particular problem, the bottom-up approach is more efficient as the depths of the trees are passed up without duplicate computation efforts. Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary tree is defined as: a binary tree in which the depth of the two subtrees of every node never differ by more than 1. Example 1: Given the following tree [3,9,20,null,null,15,7]: 3 / \ 9 20 / \ 15 7
- [How to Check Symmetric Tree in C++ (Iterative and Recursion)?](https://helloacm.com/how-to-check-symmetric-tree-in-c-iterative-and-recursion/) - How to Check Symmetric Tree in C++ (Iterative and Recursion)? Using BFS, the implementation seems easier than Iterative DFS since we just need to have a Queue for storing the TreeNode pair (left and right). Start by putting the root node in the queue. At each iteration, we check if the queue is empty. If not, get the front node from the queue and push its children (two node pairs, indicating two subtrees) to the queue. Given a binary tree, you are asked to check whether it is a mirror of itself (i.e, symmetric around its center): https://leetcode.com/problems/symmetric-tree/ For example, this binary tree is symmetric: 1 / \ 2 2 / \ / \ 3 4 4 3 But the following is not: 1 / \ 2 2 \ \ 3
- [Teaching Kids Programming - Revisit the Symmetric Binary Tree by Using Clone and Invert Algorithm](https://helloacm.com/teaching-kids-programming-revisit-the-symmetric-binary-tree-by-using-clone-and-invert-algorithm/) - We can also do this without cloning the binary tree (if we allow modification of the binary tree): Just need to check the inverse of right sub tree is the same as left sub tree. We know how to invert a binary tree. We also learned how to check if a binary tree is symmetric. Today, we are going to take another look by using the Clone, Invert algorithms to check if a binary tree is symmetric. A Binary Tree is Symmetric if and only if its Inverse is the
- [Teaching Kids Programming - Recursive Algorithm to Determine if a Binary Tree is Symmetric](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-determine-if-a-binary-tree-is-symmetric/) - One way of thinking a binary tree is symmetric is that its left and right sub trees are mirrored. Then, we can define a recursive function to check if two sub trees are symmetric. Given the root to a binary tree root, return whether it is symmetric. Constraints n ≤ 100,000 where n is the number of nodes in root Recursive Algorithm to Check if A Binary Tree is Symmetric One way of thinking a binary tree is symmetric is that its left and right sub trees are mirrored.
- [Teaching Kids Programming - Iterative Algorithm to Check if a Binary Tree is Symmetric](https://helloacm.com/teaching-kids-programming-iterative-algorithm-to-check-if-a-binary-tree-is-symmetric/) - Teaching Kids Programming - Iterative Algorithm to Check if a Binary Tree is Symmetric Given the root to a binary tree root, return whether it is symmetric. For example, this binary tree is symmetric: 1 / \ 2 2 / \ / \ 3 4 4 3 But the following is not: 1 / \ 2 2 \ \ 3 3 Constraints n ≤ 100,000 where n is the
- [Teaching Kids Programming - Iterative Algorithm to Check if a Binary Tree is Symmetric](https://helloacm.com/teaching-kids-programming-iterative-algorithm-to-check-if-a-binary-tree-is-symmetric/) - Teaching Kids Programming - Iterative Algorithm to Check if a Binary Tree is Symmetric Given the root to a binary tree root, return whether it is symmetric. For example, this binary tree is symmetric: 1 / \ 2 2 / \ / \ 3 4 4 3 But the following is not: 1 / \ 2 2 \ \ 3 3 Constraints n ≤ 100,000 where n is the
- [Teaching Kids Programming - Algorithms to Find Minimum Common Value of Two Sorted Arrays (Binary Search, Two Pointer, Brute Force, Hash Set Intersection)](https://helloacm.com/teaching-kids-programming-algorithms-to-find-minimum-common-value-of-two-sorted-arrays-binary-search-two-pointer/) - Teaching Kids Programming - Algorithms to Find Minimum Common Value of Two Sorted Arrays (Binary Search, Two Pointer, Brute Force, Hash Set Intersection) Given two integer arrays nums1 and nums2, sorted in non-decreasing order, return the minimum integer common to both arrays. If there is no common integer amongst nums1 and nums2, return -1. Note that an integer is said to be common to nums1 and nums2 if both arrays have at least one occurrence of that integer.
- [Teaching Kids Programming - Algorithms to Find Minimum Common Value of Two Sorted Arrays (Binary Search, Two Pointer, Brute Force, Hash Set Intersection)](https://helloacm.com/teaching-kids-programming-algorithms-to-find-minimum-common-value-of-two-sorted-arrays-binary-search-two-pointer/) - Teaching Kids Programming - Algorithms to Find Minimum Common Value of Two Sorted Arrays (Binary Search, Two Pointer, Brute Force, Hash Set Intersection) Given two integer arrays nums1 and nums2, sorted in non-decreasing order, return the minimum integer common to both arrays. If there is no common integer amongst nums1 and nums2, return -1. Note that an integer is said to be common to nums1 and nums2 if both arrays have at least one occurrence of that integer.
- [Teaching Kids Programming - Count Nodes Equal to Average of Subtree via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-count-nodes-equal-to-average-of-subtree-via-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Count Nodes Equal to Average of Subtree via Recursive Depth First Search Algorithm
- [Teaching Kids Programming - Count Nodes Equal to Sum of Descendants (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-count-nodes-equal-to-sum-of-descendants-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Count Nodes Equal to Sum of Descendants (Recursive Depth First Search Algorithm) Given the root of a binary tree, return the number of nodes where the value of the node is equal to the sum of the values of its descendants. A descendant of a node x is any node that is on the path from node x to some leaf node. The sum is considered to
- [How to Map or Transform a Vector in C++ (Template Function)?](https://helloacm.com/how-to-map-or-transform-a-vector-in-c-template-function/) - Given a vector, e.g. of integers, we want to apply a function to each element and transform to another vector/array. For example, we might want to return a new array that squares each elements in the original array or list. C++ STL doesn't provide the map function but we can provide a template function to How to Map or Transform a Vector in C++ (Template Function)?
- [Teaching Kids Programming - Sum of Number and Its Reverse (Bruteforce Algorithm)](https://helloacm.com/teaching-kids-programming-sum-of-number-and-its-reverse-bruteforce-algorithm/) - Teaching Kids Programming - Sum of Number and Its Reverse (Bruteforce Algorithm) Given a non-negative integer num, return true if num can be expressed as the sum of any non-negative integer and its reverse, or false otherwise. Example 1: Input: num = 443 Output: true Explanation: 172 + 271 = 443 so we return true. Example 2: Input: num = 63 Output: false Explanation: 63 cannot be
- [Teaching Kids Programming - Maximum Count of Positive Integer and Negative Integer in Sorted Array](https://helloacm.com/teaching-kids-programming-maximum-count-of-positive-integer-and-negative-integer-in-sorted-array/) - Teaching Kids Programming - Maximum Count of Positive Integer and Negative Integer in Sorted Array Given an array nums sorted in non-decreasing order, return the maximum between the number of positive integers and the number of negative integers. In other words, if the number of positive integers in nums is pos and the number of negative integers is neg, then return the maximum of pos and neg. Note that 0
- [Teaching Kids Programming - Maximum Count of Positive Integer and Negative Integer in Sorted Array](https://helloacm.com/teaching-kids-programming-maximum-count-of-positive-integer-and-negative-integer-in-sorted-array/) - Teaching Kids Programming - Maximum Count of Positive Integer and Negative Integer in Sorted Array Given an array nums sorted in non-decreasing order, return the maximum between the number of positive integers and the number of negative integers. In other words, if the number of positive integers in nums is pos and the number of negative integers is neg, then return the maximum of pos and neg. Note that 0
- [Manual RAID-1 using Two 18TB USB External Hard Drive (HDD)](https://helloacm.com/manual-raid-1-using-two-18tb-usb-external-hard-drive-hdd/) - Manual RAID-1 using Two 18TB USB External Hard Drive (HDD) Data backup is essential. If you don't have backup, when hard drives are broken, you are likely to lose the data. Ideally, you would need at least 1 copy of important data which is in a separate place, e.g. Cloud. However, using the Cloud services such as Dropbox, Apple iCloud, Google One, Microsoft Onedrive could
- [Introducing the Batch Utility for Windows - mem.cmd](https://helloacm.com/introducing-the-batch-utility-for-windows-mem-cmd/) - Introducing the Batch Utility for Windows - mem.cmd However, I'd like to have a command line/tool that prints the memory usage for a given application.
- [Teaching Kids Programming - Minimum Number of Arrows to Burst Balloons (Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-number-of-arrows-to-burst-balloons-greedy-algorithm/) - Teaching Kids Programming - Minimum Number of Arrows to Burst Balloons (Greedy Algorithm) There are some spherical balloons taped onto a flat wall that represents the XY-plane. The balloons are represented as a 2D integer array points where points[i] = [xstart, xend] denotes a balloon whose horizontal diameter stretches between xstart and xend. You do not know the exact y-coordinates of the balloons. Arrows can be shot up
- [Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-check-if-there-is-a-path-with-equal-number-of-0s-and-1s-breadth-first-search-algorithm/) - Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Breadth First Search Algorithm) You are given a 0-indexed m x n binary matrix grid. You can move from a cell (row, col) to any of the cells (row + 1, col) or (row, col + 1). Return true if there is a path from (0, 0) to (m - 1, n - 1) that visits an equal number
- [Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-check-if-there-is-a-path-with-equal-number-of-0s-and-1s-breadth-first-search-algorithm/) - Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Breadth First Search Algorithm) You are given a 0-indexed m x n binary matrix grid. You can move from a cell (row, col) to any of the cells (row + 1, col) or (row, col + 1). Return true if there is a path from (0, 0) to (m - 1, n - 1) that visits an equal number
- [Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Maze, Recursion, Memoization, Dynamic Programming)](https://helloacm.com/teaching-kids-programming-check-if-there-is-a-path-with-equal-number-of-0s-and-1s-maze-recursion-dynamic-programming/) - You are given a 0-indexed m x n binary matrix grid. You can move from a cell (row, col) to any of the cells (row + 1, col) or (row, col + 1). Return true if there is a path from (0, 0) to (m - 1, n - 1) that visits an equal number Teaching Kids Programming - Check if There is a Path With Equal Number of 0's And 1's (Maze/Recursion/Memoization/Dynamic Programming)
- [Teaching Kids Programming - Count Pairs Of Similar Strings (Bruterforce, Hash Map / Counter and Bit masking)](https://helloacm.com/teaching-kids-programming-count-pairs-of-similar-strings-bruterforce-hash-map-counter-and-bit-masking/) - Teaching Kids Programming - Count Pairs Of Similar Strings (Bruterforce, Hash Map and Bit masking) You are given a 0-indexed string array words. Two strings are similar if they consist of the same characters. For example, "abca" and "cba" are similar since both consist of characters 'a', 'b', and 'c'. However, "abacba" and "bcfd" are not similar since they do not consist of the same characters. Return the number of
- [Teaching Kids Programming - Finding 3-Digit Even Numbers (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-finding-3-digit-even-numbers-breadth-first-search-algorithm/) - Teaching Kids Programming - Finding 3-Digit Even Numbers (Breadth First Search Algorithm) You are given an integer array digits, where each element is a digit. The array may contain duplicates. You need to find all the unique integers that follow the given requirements: The integer consists of the concatenation of three elements from digits in any arbitrary order. The integer does not have leading zeros. The integer
- [Teaching Kids Programming - Finding 3-Digit Even Numbers (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-finding-3-digit-even-numbers-breadth-first-search-algorithm/) - Teaching Kids Programming - Finding 3-Digit Even Numbers (Breadth First Search Algorithm) You are given an integer array digits, where each element is a digit. The array may contain duplicates. You need to find all the unique integers that follow the given requirements: The integer consists of the concatenation of three elements from digits in any arbitrary order. The integer does not have leading zeros. The integer
- [Teaching Kids Programming - Finding 3-Digit Even Numbers (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-finding-3-digit-even-numbers-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Finding 3-Digit Even Numbers (Recursive Depth First Search Algorithm) You are given an integer array digits, where each element is a digit. The array may contain duplicates. You need to find all the unique integers that follow the given requirements: The integer consists of the concatenation of three elements from digits in any arbitrary order. The integer does not have leading zeros. The integer
- [Teaching Kids Programming - Finding 3-Digit Even Numbers (Permutations, Brute Force)](https://helloacm.com/teaching-kids-programming-finding-3-digit-even-numbers-permutations-brute-force/) - Teaching Kids Programming - Finding 3-Digit Even Numbers (Permutations, Brute Force) You are given an integer array digits, where each element is a digit. The array may contain duplicates. You need to find all the unique integers that follow the given requirements: The integer consists of the concatenation of three elements from digits in any arbitrary order. The integer does not have leading zeros. The integer
- [Teaching Kids Programming - How Many Games are Played in World Cup (Combinatorics and Permutations)](https://helloacm.com/teaching-kids-programming-how-many-games-are-played-in-world-cup-combinatorics-and-permutations/) - How Many Matches are played during Worldcup? There are 32 teams, allocated to 8 Groups of Four. In The Group Stages, there are 6 matches each which is [math] C(4, 2) = 6 [/math]. Half of 32 = 16 qualifies (top 2 in the groups) to knock-out stages. Each knock-out elinimates one team, so 15
- [Teaching Kids Programming - Algorithms to Check a Circular Sentence](https://helloacm.com/teaching-kids-programming-algorithms-to-check-a-circular-sentence/) - Teaching Kids Programming - Algorithms to Check a Circular Sentence A sentence is a list of words that are separated by a single space with no leading or trailing spaces. For example, "Hello World", "HELLO", "hello world hello world" are all sentences. Words consist of only uppercase and lowercase English letters. Uppercase and lowercase English letters are considered different. A sentence is circular if: The
- [Teaching Kids Programming - Algorithms to Find the Pivot Integer of the First N Natural Numbers](https://helloacm.com/teaching-kids-programming-algorithms-to-find-the-pivot-integer-of-the-first-n-natural-numbers/) - Teaching Kids Programming - Algorithms Find the Pivot Integer of the First N Natural Numbers Given a positive integer n, find the pivot integer x such that: The sum of all elements between 1 and x inclusively equals the sum of all elements between x and n inclusively. Return the pivot integer x. If no such integer exists, return -1. It is guaranteed that there will be at most one
- [A Simple Testing Framework for Python](https://helloacm.com/a-simple-testing-framework-for-python/) - A Simple Testing Framework for Python Writing a Simple Testing Framework in Python We often need to run some tests (unit tests or integration tests). We can organize the tests in such way: testing = TestSuite() # register test 1 testing.register_test(setup1, teardown1, test1) # register test 2 testing.register_test(setup2, teardown2, test2) if testing.run(continue_on_failure=True): print("Passed.") else: print("Failed.") We can specify optional setup and
- [Teaching Kids Programming - Nearest Exit from Entrance in Maze via Depth First Search Algorithm (DFS)](https://helloacm.com/teaching-kids-programming-nearest-exit-from-entrance-in-maze-via-depth-first-search-algorithm/) - Teaching Kids Programming - Nearest Exit from Entrance in Maze via Depth First Search Algorithm You are given an m x n matrix maze (0-indexed) with empty cells (represented as '.') and walls (represented as '+'). You are also given the entrance of the maze, where entrance = [entrancerow, entrancecol] denotes the row and column of the cell you are initially standing at. In one step, you can move one
- [Teaching Kids Programming - Nearest Exit from Entrance in Maze via Iterative Deepening Search Algorithm (IDS)](https://helloacm.com/teaching-kids-programming-nearest-exit-from-entrance-in-maze-via-iterative-deepening-search-algorithm-ids/) - Teaching Kids Programming - Nearest Exit from Entrance in Maze via Iterative Deepening Search Algorithm (IDS) You are given an m x n matrix maze (0-indexed) with empty cells (represented as '.') and walls (represented as '+'). You are also given the entrance of the maze, where entrance = [entrancerow, entrancecol] denotes the row and column of the cell you are initially standing at. In one step, you can move one
- [Teaching Kids Programming - Nearest Exit from Entrance in Maze via Breadth First Search Algorithm (BFS)](https://helloacm.com/teaching-kids-programming-nearest-exit-from-entrance-in-maze-via-breadth-first-search-algorithm/) - You are given an m x n matrix maze (0-indexed) with empty cells (represented as '.') and walls (represented as '+'). You are also given the entrance of the maze, where entrance = [entrancerow, entrancecol] denotes the row and column of the cell you are initially standing at. In one step, you can move one Teaching Kids Programming - Nearest Exit from Entrance in Maze via Breadth First Search Algorithm
- [How to Kill a Process or Capture Signals (SIGTERM, SIGKILL) in Python?](https://helloacm.com/how-to-kill-a-process-or-capture-signals-sigterm-sigkill-in-python/) - How to Kill a Process or Capture Signals (SIGTERM, SIGKILL) in Python? Kill Current Process We can kill a process itself or let the process commit suicide by sending the SIGKILL signal to itself. We can do this via os.kill: import os import signal os.kill(os.getpid(), signal.SIGKILL) The SIGKILL will terminate the Python process immediately. Alternatively, we can graceful terminate a process by sending the SIGTERM signal, which
- [How Tall is the Table? (Simple Math Equations)](https://helloacm.com/how-tall-is-the-table-simple-math-equations/) - How Tall is the Table? Two Math Equations Assume Table=X, Turtle=T, and Cat=C. From Left, we have [math] T + 170 = X + C [/math] and From Right, we have [math] C + 130 = X + T [/math] Moving C and T to the left in both equations: [math] X = T + How Tall is the Table? (Simple Math Equations)
- [Teaching Kids Programming - Minimum Cuts to Divide a Circle](https://helloacm.com/teaching-kids-programming-minimum-cuts-to-divide-a-circle/) - Teaching Kids Programming - Minimum Cuts to Divide a Circle A valid cut in a circle can be: A cut that is represented by a straight line that touches two points on the edge of the circle and passes through its center, or A cut that is represented by a straight line that touches one point on the edge of the circle and its center.
- [How to Mask Email Addresses using PHP Function?](https://helloacm.com/how-to-mask-email-addresses-using-php-function/) - Email masking function in PHP For users privacy we don't want to display the full email addresses - and we can use the following PHP function to mask the email addresses properly. For example: admin@helloacm.com will be masked into a***n@helloacm.com Here we only mask the email account name and leave the account domain names intact.
- [Teaching Kids Programming - Minimum Sum of Four Digit Number After Splitting Digits](https://helloacm.com/teaching-kids-programming-minimum-sum-of-four-digit-number-after-splitting-digits/) - You are given a positive integer num consisting of exactly four digits. Split num into two new integers new1 and new2 by using the digits found in num. Leading zeros are allowed in new1 and new2, and all the digits found in num must be used. For example, given num = 2932, you have the Teaching Kids Programming - Minimum Sum of Four Digit Number After Splitting Digits
- [Teaching Kids Programming - Compound Interests and Euler's number (Math Constant E)](https://helloacm.com/teaching-kids-programming-compound-interests-and-eulers-number-math-constant-e/) - Teaching Kids Programming - Compound Interests and Euler's number (Math Constant E) Suppose you have deposited $1 into the bank account, and if the interest rate is 100% (AER = Annual Equivalent Rate). If the interests are paid out once yearly, together with $1 (your initial money, also called principal balance), you will have $1+$1=$2. However, if the interests are paid out twice e.g. every 6 months,
- [Teaching Kids Programming - Minimum Genetic Mutation via Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-minimum-genetic-mutation-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Minimum Genetic Mutation via Breadth First Search Algorithm A gene string can be represented by an 8-character long string, with choices from 'A', 'C', 'G', and 'T'. Suppose we need to investigate a mutation from a gene string startGene to a gene string endGene where one mutation is defined as one single character changed in the gene string. For example, "AACCGGTT" --> "AACCGGTA"
- [Teaching Kids Programming - Minimum Genetic Mutation via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-minimum-genetic-mutation-via-depth-first-search-algorithm/) - A gene string can be represented by an 8-character long string, with choices from 'A', 'C', 'G', and 'T'. Suppose we need to investigate a mutation from a gene string startGene to a gene string endGene where one mutation is defined as one single character changed in the gene string. For example, "AACCGGTT" --> "AACCGGTA" Teaching Kids Programming - Minimum Genetic Mutation via Depth First Search Algorithm
- [Teaching Kids Programming - Minimum Genetic Mutation via Iterative Deepening Search Algorithm](https://helloacm.com/teaching-kids-programming-minimum-genetic-mutation-via-iterative-deepening-search-algorithm/) - Teaching Kids Programming - Minimum Genetic Mutation via Iterative Deepening Search Algorithm A gene string can be represented by an 8-character long string, with choices from 'A', 'C', 'G', and 'T'. Suppose we need to investigate a mutation from a gene string startGene to a gene string endGene where one mutation is defined as one single character changed in the gene string. For example, "AACCGGTT" --> "AACCGGTA"
- [Work Everywhere: Build a Serverless Visual Studio Code in Browser using Railway](https://helloacm.com/work-everywhere-build-a-serverless-visual-studio-code-in-browser-using-railway/) - Work Everywhere: Build a Serverless Visual Studio Code in Browser using Railway Often, I do the leetcoding at spare time such as watching kids running in soft play or other e.g. family events. Leetcoding is handy as long as you have a browser. But sometimes, I'd like to do some programming which is not easy as on iPad there is no proper IDE replacement for Visual Studio
- [BASH Script to Query and Monitor the Crypto Prices (Exchange Rate to Fiat)](https://helloacm.com/bash-script-to-query-and-monitor-the-crypto-prices-exchange-rate-to-fiat/) - BASH Script to Query and Monitor the Crypto Prices (Exchange Rate to Fiat) With the Crypto Price Lookup API and the JSON jq tool, we can make a simple bash script to query crypto prices such as bitcoins, TRON, steem: #!/bin/bash # filename: ticker check_json=$(echo "{ }" | jq) if [ "$check_json" != "{}" ]; then echo "jq not installed" exit 1 fi if [ "$1" == ""
- [Teaching Kids Programming - Largest Perimeter Triangle (Sorting + Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-largest-perimeter-triangle-sorting-greedy-algorithm/) - Teaching Kids Programming - Largest Perimeter Triangle (Sorting + Greedy Algorithm) Given an integer array nums, return the largest perimeter of a triangle with a non-zero area, formed from three of these lengths. If it is impossible to form any triangle of a non-zero area, return 0. Example 1: Input: nums = [2,1,2] Output: 5 Example 2: Input: nums = [1,2,1] Output: 0 Constraints: 3
- [Greedy Algorithm to Find the Largest Perimeter Triangle by Sorting](https://helloacm.com/greedy-algorithm-to-find-the-largest-perimeter-triangle-by-sorting/) - Greedy Algorithm to Find the Largest Perimeter Triangle by Sorting The minimal requirement for 3 lengths to become a triangle is that the sum of the minimal two lengths should be larger than the third one (biggest). Let's say these lengths are sorted in ascending order from the smallest to the largest: a, b and c. It can be certain that a + b should be larger than c.
- [Teaching Kids Programming - Determine if Two Events Have Conflict (Intersections of Two Intervals)](https://helloacm.com/teaching-kids-programming-determine-if-two-events-have-conflict-intersections-of-two-intervals/) - Teaching Kids Programming - Determine if Two Events Have Conflict (Intersections of Two Intervals) You are given two arrays of strings that represent two inclusive events that happened on the same day, event1 and event2, where: event1 = [startTime1, endTime1] and event2 = [startTime2, endTime2]. Event times are valid 24 hours format in the form of HH:MM. A conflict happens when two events have some non-empty intersection (i.e., some
- [Teaching Kids Programming - Number of Valid Clock Times](https://helloacm.com/teaching-kids-programming-number-of-valid-clock-times/) - Teaching Kids Programming - Number of Valid Clock Times You are given a string of length 5 called time, representing the current time on a digital clock in the format "hh:mm". The earliest possible time is "00:00" and the latest possible time is "23:59". In the string time, the digits represented by the ? symbol are unknown, and must be replaced with a digit
- [How do you Design a Circular FIFO Buffer (Queue) in C?](https://helloacm.com/how-do-you-design-a-circular-fifo-buffer-queue-in-c/) - How do you Design a Circular FIFO Buffer (Queue) in C?It is fixed size so the best data structure is the static array that we can use to represent the buffer.
- [Teaching Kids Programming - Minimum Split Into Subarrays With GCD Greater Than One (Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-split-into-subarrays-with-gcd-greater-than-one-greedy-algorithm/) - Teaching Kids Programming - Minimum Split Into Subarrays With GCD Greater Than One (Greedy Algorithm) You are given an array nums consisting of positive integers. Split the array into one or more disjoint subarrays such that: Each element of the array belongs to exactly one subarray, and The GCD of the elements of each subarray is strictly greater than 1. Return the minimum number of subarrays that can be obtained
- [Teaching Kids Programming - Recursive Algorithm to Count and Say a Number String](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-count-and-say-a-number-string/) - Teaching Kids Programming - Recursive Algorithm to Count and Say a Number String The count-and-say sequence is a sequence of digit strings defined by the recursive formula: countAndSay(1) = "1" countAndSay(n) is the way you would "say" the digit string from countAndSay(n-1), which is then converted into a different digit string. To determine how you "say" a digit string, split it into the minimal number of substrings such
- [How to Read Parameters from a JSON File in BASH Script?](https://helloacm.com/how-to-read-parameters-from-a-json-file-in-bash-script/) - The parameters can be passed as command line to the shell scripts as $1, $2 etc. However, if there are many parameters, passing via command line is not ideal and convenient. We can utilize the jq command/tool to parse a JSON string. First, lets test if the jq is installed: #!/bin/bash test_json=$(echo "{ }" | How to Read Parameters from a JSON File in BASH Script?
- [C#: How to Create, Update, Delete and Check (If Exists) an Azure Resource Group in .NET?](https://helloacm.com/c-how-to-create-update-delete-and-check-an-azure-resource-group-in-net/) - C#: How to Create, Update, Delete and Check (If Exists) an Azure Resource Group in .NET?Microsoft Azure Cloud organizes resources by Subscription ID and Resource Groups. In this post, we will find out the methods to check if a given resource group exists, to add or create or update an azure resource group, and delete a resource group. We can use a Bearer Token credential to authenticate, or we can
- [Teaching Kids Programming - Number of Common Factors (Brute Force Algorithm + Greatest Common Divisor)](https://helloacm.com/teaching-kids-programming-number-of-common-factors-bruteforce-algorithm-greatest-common-divisor/) - Teaching Kids Programming - Number of Common Factors (Brute Force Algorithm + Greatest Common Divisor) Given two positive integers a and b, return the number of common factors of a and b. An integer x is a common factor of a and b if x divides both a and b. Example 1: Input: a = 12, b = 6 Output: 4 Explanation: The common factors of 12 and 6 are
- [Teaching Kids Programming - Maximum Ascending Subarray Sum (Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-maximum-ascending-subarray-sum-greedy-algorithm/) - Teaching Kids Programming - Maximum Ascending Subarray Sum (Greedy Algorithm) Given an array of positive integers nums, return the maximum possible sum of an ascending subarray in nums. A subarray is defined as a contiguous sequence of numbers in an array. A subarray [numsl, numsl+1, ..., numsr-1, numsr] is ascending if for all i where l
- [Teaching Kids Programming - Finding Path Sum in Binary Tree via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-finding-path-sum-in-binary-tree-via-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Finding Path Sum in Binary Tree via Recursive Depth First Search Algorithm Given the root of a binary tree and an integer targetSum, return true if the tree has a root-to-leaf path such that adding up all the values along the path equals targetSum. A leaf is a node with no children. Example 1: Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22 Output: true Explanation: The root-to-leaf path
- [Teaching Kids Programming - Finding Path Sum in Binary Tree via Breadth First Search Algorithm (and Iterative DFS)](https://helloacm.com/teaching-kids-programming-finding-path-sum-in-binary-tree-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Finding Path Sum in Binary Tree via Breadth First Search Algorithm (and Iterative DFS) Given the root of a binary tree and an integer targetSum, return true if the tree has a root-to-leaf path such that adding up all the values along the path equals targetSum. A leaf is a node with no children. Example 1: Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22 Output: true Explanation: The root-to-leaf path
- [Teaching Kids Programming - Finding Path Sum in Binary Tree via Breadth First Search Algorithm (and Iterative DFS)](https://helloacm.com/teaching-kids-programming-finding-path-sum-in-binary-tree-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Finding Path Sum in Binary Tree via Breadth First Search Algorithm (and Iterative DFS) Given the root of a binary tree and an integer targetSum, return true if the tree has a root-to-leaf path such that adding up all the values along the path equals targetSum. A leaf is a node with no children. Example 1: Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22 Output: true Explanation: The root-to-leaf path
- [Simple Bearer Token Credential Wrapper for C# (Azure SDK)](https://helloacm.com/simple-bearer-token-credential-wrapper-for-c-azure-sdk/) - The Azure SDK has a TokenCredential Class which is abstract and there are quite a few Token Credential Classes see this full list. Azure.Identity.AuthorizationCodeCredential Azure.Identity.AzureCliCredential Azure.Identity.AzurePowerShellCredential Azure.Identity.ChainedTokenCredential Azure.Identity.ClientAssertionCredential Azure.Identity.ClientCertificateCredential Azure.Identity.ClientSecretCredential Azure.Identity.DefaultAzureCredential Azure.Identity.DeviceCodeCredential Azure.Identity.EnvironmentCredential Azure.Identity.InteractiveBrowserCredential Azure.Identity.ManagedIdentityCredential Azure.Identity.OnBehalfOfCredential Azure.Identity.SharedTokenCacheCredential Azure.Identity.UsernamePasswordCredential Azure.Identity.VisualStudioCodeCredential Azure.Identity.VisualStudioCredential Microsoft.Identity.Web.TokenAcquisitionAppTokenCredential Microsoft.Identity.Web.TokenAcquisitionTokenCredential There is no direct class that we can instantise with a Simple Bearer Simple Bearer Token Credential Wrapper for C# (Azure SDK)
- [Teaching Kids Programming - Introduction to XML Data Format](https://helloacm.com/teaching-kids-programming-introduction-to-xml-data-format/) - What is XML? XML - short for eXtensible Markup Language. XML is a simple-to-understand data format that we use to store and transform the data. With XML, users can define the tags (meta data) and store the data inside the tags or as attributes. XML stores the data only, and is not responsible for how Teaching Kids Programming - Introduction to XML Data Format
- [Teaching Kids Programming - Count Days Spent Together (Intersection of Two Intervals + Line Sweep Algorithm)](https://helloacm.com/teaching-kids-programming-count-days-spent-together-intersection-of-two-intervals-line-sweep-algorithm/) - Alice and Bob are traveling to Rome for separate business meetings. You are given 4 strings arriveAlice, leaveAlice, arriveBob, and leaveBob. Alice will be in the city from the dates arriveAlice to leaveAlice (inclusive), while Bob will be in the city from the dates arriveBob to leaveBob (inclusive). Each will be a 5-character string in Teaching Kids Programming - Count Days Spent Together (Intersection of Two Intervals + Line Sweep Algorithm)
- [Algorithm to Compute the Concatenation of Consecutive Binary Numbers](https://helloacm.com/algorithm-to-compute-the-concatenation-of-consecutive-binary-numbers/) - Algorithm to Compute the Concatenation of Consecutive Binary Numbers Given a binary string, we know how to convert it to decimals. The algorithm to solve this is actually quite similar.
- [Teaching Kids Programming - Concatenation of Consecutive Binary Numbers](https://helloacm.com/teaching-kids-programming-concatenation-of-consecutive-binary-numbers/) - Given an integer n, return the decimal value of the binary string formed by concatenating the binary representations of 1 to n in order, modulo 10^9 + 7. Example 1: Input: n = 1 Output: 1 Explanation: "1" in binary corresponds to the decimal value 1. Example 2: Input: n = 3 Output: 27 Explanation: Teaching Kids Programming - Concatenation of Consecutive Binary Numbers
- [Are VPS or Shared Servers Free from Data Corruptions due to Disk Failures? (RAID Support)](https://helloacm.com/are-vps-or-shared-servers-free-from-data-corruptions-due-to-disk-failures-raid-support/) - The Dedicated Servers don't have direct hardware orchestration, thus we need to make sure the data is backup regually. It is highly recommended that we have the RAID in place to ensure data recovery in case one or more disk is failing. And most VPS Hosting companies provide (usually paid) additional backup services. For VPS Are VPS or Shared Servers Free from Data Corruptions due to Disk Failures? (RAID Support)
- [Teaching Kids Programming - What is JSON? Simply Explained](https://helloacm.com/teaching-kids-programming-what-is-json-simply-explained/) - Teaching Kids Programming - What is JSON? Simply Explained
- [MS SQL Server Database: Is It Possible to Identify the Corruption?](https://helloacm.com/ms-sql-server-database-is-it-possible-to-identify-the-corruption/) - MS SQL Server Database: Is It Possible to Identify the Corruption? MS SQL Server, also known as a Relational Database Management System, developed by MS software developers, is probably the best database administration that businesses use to store various professional and sensitive details. The MS SQL Server might seem highly beneficial, but you should not MS SQL Server Database: Is It Possible to Identify the Corruption?
- [Teaching Kids Programming - Dynamic Programming Algorithms to Obtain Max Non-Neighbour Values](https://helloacm.com/teaching-kids-programming-dynamic-programming-algorithms-to-obtain-max-non-neighbour-values/) - House Robber problem solved using Top-down and Bottom-up Dynamic Programming Algorithms You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security system connected and it will automatically contact the police if two adjacent houses were broken into on the
- [Using the Dynamic Programming Algorithm, the Depth First Search or Breadth First Search to Solve House Robber Problem (Largest Sum of Non-Adjacent Numbers)](https://helloacm.com/cc-coding-exercise-house-robber-dynamic-programming/) - Using the Dynamic Programming Algorithm, the Depth First Search or Breadth First Search to Solve House Robber Problem (Largest Sum of Non-Adjacent Numbers) You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses have security system connected and it will automatically contact the police if two adjacent houses were broken into on the
- [How to Maxmize Profits to Robbering in a Binary Tree using Dynamic Programming Algorithm?](https://helloacm.com/cc-coding-exercise-house-robber-iii/) - How to Maxmize Profits to Robbering in a Binary Tree using Dynamic Programming Algorithm? Starting from the root of the tree, you can go either left or right. You can sum up the maximum values along the direction when you go from the leaves to the root.
- [C++ Dynamic Programming Algorithm to Compute the Largest Sum of Non-Adjacent Numbers in a Circular Array](https://helloacm.com/c-coding-exercise-house-robber-ii-dynamic-programming/) - C++ Dynamic Programming Algorithm to Compute the Largest Sum of Non-Adjacent Numbers in a Circular Array
- [Teaching Kids Programming - Largest Sum of Non-Adjacent Numbers (2D Version - Disappearing Coins in a Matrix)](https://helloacm.com/teaching-kids-programming-largest-sum-of-non-adjacent-numbers-2d-version-disappearing-coins-in-a-matrix/) - You are given a two-dimensional list of integers matrix where each matrix[r][c] represents the number of coins in that cell. When you pick up coins on matrix[r][c], all the coins on row r - 1 and r + 1 disappear, as well as the coins at the two cells matrix[r][c + 1] and matrix[r][c - Teaching Kids Programming - Largest Sum of Non-Adjacent Numbers (2D Version - Disappearing Coins in a Matrix)
- [Teaching Kids Programming - Number of Ways to Reach a Position After Exactly k Steps (Combinations + Math + Dynamic Programming Algorithms)](https://helloacm.com/teaching-kids-programming-number-of-ways-to-reach-a-position-after-exactly-k-steps-combinations-math-dynamic-programming-algorithms/) - You are given two positive integers startPos and endPos. Initially, you are standing at position startPos on an infinite number line. With one step, you can move either one position to the left, or one position to the right. Given a positive integer k, return the number of different ways to reach the position endPos Teaching Kids Programming - Number of Ways to Reach a Position After Exactly k Steps (Combinations + Math + Dynamic Programming Algorithms)
- [Teaching Kids Programming - Introduction to Permutation and Combination](https://helloacm.com/teaching-kids-programming-introduction-to-permutation-and-combination/) - Permutation and Combination are the math concepts to count. Given N items, if we want to choose M items (M no bigger than N) from it, there are C(N, M) ways if the order does not matter, or P(N, M) is the order matters. Permutation If there are N items, we have N choices for | Teaching Kids Programming - Introduction to Permutation and Combination
- [Teaching Kids Programming - Three Algorithms to Compute the Combination Number](https://helloacm.com/teaching-kids-programming-three-algorithms-to-compute-the-combination-number/) - Teaching Kids Programming - Three Algorithms to Compute the Combination Number
- [Teaching Kids Programming - Recursive Backtracking Algorithm to Compute the Combinations](https://helloacm.com/teaching-kids-programming-recursive-backtracking-algorithm-to-compute-the-combinations/) - Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. You may return the answer in any order. Example 1: Input: n = 4, k = 2 Output: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] Example 2: Input: n = 1, k = 1 Output: [[1]] Recursive Algorithm to compute the combinations via Depth First Search and Back tracking algorithm
- [Teaching Kids Programming - Recursive Permutation Algorithm](https://helloacm.com/teaching-kids-programming-recursive-permutation-algorithm/) - Given an array nums of distinct integers, return all the possible permutations. You can return the answer in any order. Example 1: Input: nums = [1,2,3] Output: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] Example 2: Input: nums = [0,1] Output: [[0,1],[1,0]] Example 3: Input: nums = [1] Output: [[1]] Constraints: 1
- [The Permutation Iterator in Python](https://helloacm.com/the-permutation-iterator-in-python/) - The Permutation Iterator in Python. Three iterator implementations in Python that works for both string and list.
- [A Recursive Full Permutation Algorithm in Python](https://helloacm.com/a-recursive-full-permutation-in-python/) - The full permutation of a list can be easily programmed using recursive algorithms. A quick implementation is possible using recursive functions.
- [The Permutation Algorithm for Arrays using Recursion](https://helloacm.com/c-coding-exercise-permutations/) - The Permutation Algorithm for Arrays using Recursion. C++ Algorithms Recursive Permutation Implementation. Next_permutation algorithm
- [Password Protect or IP Restriction on Wordpress wp-admin Folder (htaccess and htpasswd)](https://helloacm.com/password-protect-or-ip-restriction-on-wordpress-wp-admin-folder-htaccess-and-htpasswd/) - wp-admin folder is the most important folder in a wordpress installation. It mainly contains the code for the Dashboard. However, there is an important file admin-ajax.php which is also necessary to send requests to backend via the wordpress UI. So simply blacklisting entire wp-admin folder may break the site functionalities. I have been getting lots Password Protect or IP Restriction on Wordpress wp-admin Folder (htaccess and htpasswd)
- [Teaching Kids Programming - What is a Computer Database? A Quick Introduction](https://helloacm.com/teaching-kids-programming-what-is-a-computer-database-a-quick-introduction/) - What is a Database? A Quick Introduction to Computer Database In a simple term: A Database is a software we store the data in an organized way such that we can store, retrieve, and manage the data more efficiently and effectively. Here are a few types of storage: RAM (Random Access Memory), ROM (Read Only Teaching Kids Programming - What is a Computer Database? A Quick Introduction
- [Teaching Kids Programming - Reordered Power of Two (Rearranging the Digits, Permutation + Counting)](https://helloacm.com/teaching-kids-programming-reordered-power-of-two-rearranging-the-digits/) - You are given an integer n. We reorder the digits in any order (including the original order) such that the leading digit is not zero. Return true if and only if we can do this so that the resulting number is a power of two. Example 1: Input: n = 1 Output: true Example 2: Teaching Kids Programming - Reordered Power of Two (Rearranging the Digits, Permutation + Counting)
- [Teaching Kids Programming - Number of Zero-Filled Subarrays (GroupBy Algorithm + Math Counting)](https://helloacm.com/teaching-kids-programming-number-of-zero-filled-subarrays-groupby-algorithm-math-counting/) - Given an integer array nums, return the number of subarrays filled with 0. A subarray is a contiguous non-empty sequence of elements within an array. Example 1: Input: nums = [1,3,0,0,2,0,0,4] Output: 6 Explanation: There are 4 occurrences of [0] as a subarray. There are 2 occurrences of [0,0] as a subarray. There is no Teaching Kids Programming - Number of Zero-Filled Subarrays (GroupBy Algorithm + Math Counting)
- [Teaching Kids Programming - Reduce Array Size to The Half via Counting (Greedy, Hash Table)](https://helloacm.com/teaching-kids-programming-reduce-array-size-to-the-half-via-counting-hash-table/) - You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array. Return the minimum size of the set so that at least half of the integers of the array are removed. Example 1: Input: arr = [3,3,3,3,5,5,5,2,2,7] Output: 2 Explanation: Choosing Reduce Array Size to The Half via Counting (Hash Table)
- [Teaching Kids Programming - Algorithms to Count Equal Row and Column Pairs in a Square Matrix using Hash Map](https://helloacm.com/teaching-kids-programming-algorithms-to-count-equal-row-and-column-pairs-using-hash-map/) - Given a 0-indexed n x n integer matrix grid, return the number of pairs (Ri, Cj) such that row Ri and column Cj are equal. A row and column pair is considered equal if they contain the same elements in the same order (i.e. an equal array). Hints: We can use nested loops to compare Teaching Kids Programming - Algorithms to Count Equal Row and Column Pairs in a Square Matrix using Hash Map
- [Teaching Kids Programming - Recursive Algorithm to Validate a Binary Search Tree](https://helloacm.com/teaching-kids-programmaing-recursive-algorithm-to-validate-a-binary-search-tree/) - Teaching Kids Programming - Recursive Algorithm to Validate a Binary Search Tree Given a Binary Tree, our task is to validate if it is a binary search tree. In a BST (Binary Search Tree), all the nodes on the left sub-tree are strictly smaller than the parent node, and all the node in the right sub tree are larger than the parent node. Given a Binary Tree, our task is to validate if it is a binary search tree. In a BST (Binary Search Tree), all the nodes on the left sub-tree are strictly smaller than the parent node, and all the node in the right sub tree are larger than the parent node. Given a binary tree
- [Teaching Kids Programming - Four Algorithms to Validate a Binary Search Tree](https://helloacm.com/teaching-kids-programming-four-algorithms-to-validate-a-binary-search-tree/) - Given a binary tree root, return whether it's a binary search tree. A binary tree node is a binary search tree if : All nodes on its left subtree are smaller than node.val All nodes on its right subtree are bigger than node.val All nodes hold the these properties. Constraint n ≤ 100,000 where n Four Algorithms to Validate a Binary Search Tree
- [How to Validate Binary Search Tree in C/C++?](https://helloacm.com/how-to-validate-binary-search-tree-in-cc/) - How to Validate Binary Search Tree in C/C++? The above recursion actually is a in-order traversal for BST Trees, meaning that the left nodes (smaller) are visited first. The traversal will make a sorted array in non-descending order. How to Validate Binary Search Tree in C/C++?
- [Teaching Kids Programming - Algorithms to Find the Lowest Common Ancestor of a Binary Search Tree](https://helloacm.com/teaching-kids-programming-algorithms-to-find-the-lowest-common-ancestor-of-a-binary-search-tree/) - Given a binary search tree (BST), find the lowest common ancestor (LCA) node of two given nodes in the BST. According to the definition of LCA on Wikipedia: “The lowest common ancestor is defined between two nodes p and q as the lowest node in T that has both p and q as descendants (where Teaching Kids Programming - Algorithms to Find the Lowest Common Ancestor of a Binary Search Tree
- [Teaching Kids Programming - Recursive Algorithm to Find the Lowest Common Ancestor of a Binary Tree](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-find-the-lowest-common-ancestor-of-a-binary-search-tree/) - Given a binary search tree (BST), find the lowest common ancestor (LCA) node of two given nodes in the BST. According to the definition of LCA on Wikipedia: “The lowest common ancestor is defined between two nodes p and q as the lowest node in T that has both p and q as descendants (where Recursive algorithm to find the common ancestor of a binary tree
- [Teaching Kids Programming - Depth First Search Algorithm to Delete Even Leaves Recursively From Binary Tree](https://helloacm.com/teaching-kids-programmign-depth-first-search-algorithm-to-delete-even-leaves-recursively-from-binary-tree/) - Given a binary tree root, repeatedly delete all leaves that have even values. That is, if after deletions, a node becomes a leaf with an even value, it too should be deleted. Constraints n ≤ 100,000 where n is the number of nodes in root Recursive Depth First Search Algorithm to Delete Even Leaves of Depth First Search Algorithm to Delete Even Leaves Recursively From Binary Tree
- [Depth First Search Algorithm to Delete Even Leaves from Binary Tree](https://helloacm.com/depth-first-search-algorithm-to-delete-even-leaves-from-binary-tree/) - Depth First Search Algorithm to Delete Even Leaves from Binary Tree we should also continue this process as the intermediate nodes are becoming the new leaves. Given a binary tree root, repeatedly delete all leaves that have even values. That is, if after deletions, a node becomes a leaf with an even value, it too should be deleted. Constraints n ≤ 100,000 where n is the number of nodes in root Depth First Search Algorithm to Remove Even Leaves from Binary
- [Teaching Kids Programming - Recursive Algorithm to Prune a Binary Tree](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-prune-a-binary-tree/) - Given the root of a binary tree, return the same tree where every subtree (of the given tree) not containing a 1 has been removed. A subtree of a node node is node plus every node that is a descendant of node. Example 1: Input: root = [1,null,0,0,1] Output: [1,null,0,null,1] Explanation: Only the red nodes Teaching Kids Programming - Recursive Algorithm to Prune a Binary Tree
- [Teaching Kids Programming - Floyd Warshall Multi-source/All Pairs Shortest Path Algorithm (Sum of Costs in a Directed Unweighted Graph)](https://helloacm.com/teaching-kids-programming-floyd-warshal-multi-source-all-pairs-shortest-path-algorithm-sum-of-costs-in-a-directed-unweighted-graph/) - Teaching Kids Programming - Floyd Warshall Multi-source/All Pairs Shortest Path Algorithm (Sum of Costs in a Directed Unweighted Graph) Shipping and Receiving: Sum of Costs (Shortest Path) of Pairs of Vertex in a Directed Unweighted Graph You are given a two-dimensional list of integers ports where ports[i] represents the list of ports that port i is connected to. You are also given another two-dimensional list of integers shipments where each list of the form
- [Teaching Kids Programming - Distance Between Bus Stops (Floyd Warshall Shortest Path in Simple Undirected Weighted Regular Graph)](https://helloacm.com/teaching-kids-programming-distance-between-bus-stops-floyd-warshal-shortest-path-in-simple-undirected-weighted-regular-graph/) - A bus has n stops numbered from 0 to n - 1 that form a circle. We know the distance between all pairs of neighboring stops where distance[i] is the distance between the stops number i and (i + 1) % n. The bus goes along both directions i.e. clockwise and counterclockwise. Return the shortest Teaching Kids Programming - Distance Between Bus Stops (Floyd Floyd Warshall Shortest Path in Simple Undirected Weighted Regular Graph)
- [Teaching Kids Programming - Finding the Network Delay Time via  Floyd-Warshall Shortest Path Algorithm](https://helloacm.com/teaching-kids-programming-finding-the-network-delay-time-via-floyd-warshall-shortest-path-algorithm/) - You are given a network of n nodes, labeled from 1 to n. You are also given times, a list of travel times as directed edges times[i] = (ui, vi, wi), where ui is the source node, vi is the target node, and wi is the time it takes for a signal to travel from Teaching Kids Programming - Finding the Network Delay Time via Floyd-Warshall Shortest Path Algorithm
- [Teaching Kids Programming - Depth First/Limit Search and Iterative Deepening Search Algorithm on Unweighted Graph](https://helloacm.com/teaching-kids-programming-depth-first-limit-search-and-iterative-deepening-search-algorithm-on-unweighted-graph/) - Shipping and Receiving - Sum of Costs between Pair of Vertices in Unweighted Graph You are given a two-dimensional list of integers ports where ports[i] represents the list of ports that port i is connected to. You are also given another two-dimensional list of integers shipments where each list of the form [port_i, port_j] which Teaching Kids Programming - Depth First/Limit Search and Iterative Deepening Search Algorithm on Unweighted Graph
- [Teaching Kids Programming - Shortest Path Algorithms by Iterative Deepening Search (IDS), Depth First Search (DFS) or Breadth First Search (BFS) on Undirected Graphs](https://helloacm.com/teaching-kids-programming-shortest-path-algorithms-by-iterative-deepening-search-ids-depth-first-search-dfs-or-breadth-first-search-bfs-on-undirected-graphs/) - Teaching Kids Programming - Shortest Path Algorithms by Iterative Deepening Search (IDS), Depth First Search (DFS) or Breadth First Search (BFS) on Undirected Graphs Shortest Path on Undirected Graphs: DFS or BFS? The Depth First Search and Breadth First Search algorithms can be both used to traverse a Graph (including trees). The BFS uses a queue and we can guarantee the shortest path once a node is visited as we traverse the paths in the level-by-level order. The Python
- [Teaching Kids Programming - Uniform Cost Search Algorithm to Solve Single-Source Shortest Path in a Graph](https://helloacm.com/teaching-kids-programming-uniform-cost-search-algorithm-to-solve-shortest-path-in-a-graph/) - Teaching Kids Programming - Uniform Cost Search Algorithm to Solve Shortest Path in a Graph You are given a two-dimensional list of integers edges which represents a directed, weighted graph. Each element in edges contains [u, v, w] meaning that there is an edge from node u to node v which costs positive weight w. You are also given integers start and end. Return the cost of the shortest path
- [Teaching Kids Programming - Single Source Shortest Path Algorithm in a Directed Unweighted Graph using Breadth First Search](https://helloacm.com/teaching-kids-programming-single-source-shortest-path-algorithm-in-a-directed-unweighted-graph-using-breadth-first-search/) - Teaching Kids Programming - Single Source Shortest Path Algorithm in a Directed Unweighted Graph using Breadth First Search Shipping and Receiving: Sum of Costs (Shortest Path) of Pairs of Vertex in a Directed Unweighted Graph You are given a two-dimensional list of integers ports where ports[i] represents the list of ports that port i is connected to. You are also given another two-dimensional list of integers shipments where each list of the form
- [Teaching Kids Programming - Distance Between Bus Stops (Shortest Path in Simple Undirected Weighted Regular Graph)](https://helloacm.com/teaching-kids-programming-distance-between-bus-stops-shortest-distance-in-simple-undirected-weighted-regular-graph/) - A bus has n stops numbered from 0 to n - 1 that form a circle. We know the distance between all pairs of neighboring stops where distance[i] is the distance between the stops number i and (i + 1) % n. The bus goes along both directions i.e. clockwise and counterclockwise. Return the shortest Teaching Kids Programming - Distance Between Bus Stops (Shortest Path in Simple Undirected Weighted Regular Graph)
- [Teaching Kids Programming - Introduction to Dijkstra Single Source Shortest Path Graph Algorithm](https://helloacm.com/teaching-kids-programming-introduction-to-dijkstra-single-source-shortest-path-graph-algorithm/) - You are given a two-dimensional list of integers edges which represents a directed, weighted graph. Each element in edges contains [u, v, w] meaning that there is an edge from node u to node v which costs positive weight w. You are also given integers start and end. Return the cost of the shortest path Teaching Kids Programming - Introduction to Dijkstra Single Source Shortest Path Graph Algorithm
- [Teaching Kids Programming - A Light Talk on Breadth First Search, Uniform Cost Search and Dijkstra Shortest Path Graph Algorithms](https://helloacm.com/teaching-kids-programming-a-light-talk-on-breadth-first-search-uniform-cost-search-and-dijkstra-shortest-path-graph-algorithms/) - Breadth First Search Algorithm (BFS) performs a level by level order, and we can use this algorithm to get the shortest path in a unweighted graph. The BFS Algorithm uses a Queue which is a First In First Out Data Structure. The BFS code works like this: def BFS(G, s, e): if s == e: A Light Talk on Breadth First Search, Uniform Cost Search and Dijkstra Shortest Path Graph Algorithms
- [How to Get Passive Income using the Spare CPU to Mine?](https://helloacm.com/how-to-get-passive-income-using-the-spare-cpu-to-mine/) - How to Get Passive Income using the Spare CPU to Mine
- [Teaching Kids Programming - Valid Square Algorithm by Four Points in Cartesian Coordinate System](https://helloacm.com/teaching-kids-programming-valid-square-algorithm-by-four-points-in-cartesian-coordinate-system/) - Teaching Kids Programming - Valid Square Algorithm by Four Points in Cartesian Coordinate System
- [Algorithms to Check If Four Points can Make a Valid Square (C++ and Java)?](https://helloacm.com/how-to-check-if-four-points-can-make-a-valid-square-c-and-java/) - How to Check If Four Points can Make a Valid Square (C++ and Java)? Given four points, we may brute force all four permutation with has O(1) complexity i.e. needs to check 4!=24 cases that if any of those make a square.
- [Python Tool of Base58 Decode Check](https://helloacm.com/python-tool-of-base58-decode-check/) - Python Tool of Base58 Decode Check
- [Teaching Kids Programming - Minmax Dynamic Programming Algorithm (Game of Picking Numbers at Two Ends)](https://helloacm.com/teaching-kids-programming-minmax-dynamic-programming-algorithm-game-of-picking-numbers-at-two-ends/) - Teaching Kids Programming - Minmax Dynamic Programming Algorithm (Game of Picking Numbers at Two Ends)
- [Teaching Kids Programming - Dynamic Programming Algorithm to Compute Minimum Number of Coins](https://helloacm.com/teaching-kids-programming-dynamic-programming-algorithm-to-compute-minimum-number-of-coins/) - Teaching Kids Programming - Dynamic Programming Algorithm to Compute Minimum Number of Coins
- [How to Delete/Remove Kubernetes - Azure Arc using CLI without kubeconfig or connected to cluster?](https://helloacm.com/how-to-delete-remove-kubernetes-azure-arc-using-cli-without-kubeconfig-or-connected-to-cluster/) - How to Delete/Remove Kubernetes - Azure Arc using CLI without kubeconfig or connected to cluster?
- [Teaching Kids Programming - Breadth First Search Algorithm to Find a Corresponding Node of a Binary Tree in a Clone of That Tree](https://helloacm.com/teaching-kids-programming-breadth-first-search-algorithm-to-find-a-corresponding-node-of-a-binary-tree-in-a-clone-of-that-tree/) - Teaching Kids Programming - Breadth First Search Algorithm to Find a Corresponding Node of a Binary Tree in a Clone of That Tree
- [Teaching Kids Programming - Backtracking Algorithm to Find Factor Combinations (Math, Recursive Depth First Search)](https://helloacm.com/teaching-kids-programming-backtracking-algorithm-to-find-factor-combinations-math-recursive-depth-first-search/) - Teaching Kids Programming - Backtracking Algorithm to Find Factor Combinations (Math, Recursive Depth First Search)
- [Teaching Kids Programming - Introduction to Cartesian Product (Math)](https://helloacm.com/teaching-kids-programming-introduction-to-cartesian-product-math/) - Teaching Kids Programming - Introduction to Cartesian Product (Math)
- [Teaching Kids Programming - Implementation of Cartesian Product in Python via Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-implementation-of-cartesian-product-in-python-via-depth-first-search-algorithm/) - Implementation of Cartesian Product in Python via Depth First Search Algorithm
- [Teaching Kids Programming - Recursive Depth First Search Algorithm to Evaluate the Boolean Binary Tree](https://helloacm.com/teaching-kids-programming-recursive-depth-first-search-algorithm-to-evaluate-the-boolean-binary-tree/) - Teaching Kids Programming - Recursive Depth First Search Algorithm to Evaluate the Boolean Binary Tree
- [Teaching Kids Programming - (!3+3)*!3=10 - Derangement Algorithms via Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-33310-derangement-algorithms-via-dynamic-programming-algorithm/) - Teaching Kids Programming - (!3+3)*!3=10 - Derangement Algorithms via Dynamic Programming Algorithm
- [Teaching Kids Programming - (!3+3)*!3=10 - Derangement Algorithms via Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-33310-derangement-algorithms-via-dynamic-programming-algorithm/) - Teaching Kids Programming - (!3+3)*!3=10 - Derangement Algorithms via Dynamic Programming Algorithm
- [Derangement Permutation Implementation using R Programming](https://helloacm.com/derangement-permutation-implementation-using-r-programming/) - Derangement Permutation Implementation using R Programming The derangement Permutation adds an important rule i.e. The number i cannot be placed at i-th position.
- [Teaching Kids Programming - Dynamic Programming Algorithms to Compute the Number of Derangement Permutations](https://helloacm.com/teaching-kids-programming-dynamic-programming-algorithms-to-compute-the-number-of-derangement-permutations/) - Compute the number of derangement permutations using top down and bottom up dynamic programming algorithms
- [Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-count-unreachable-pairs-of-nodes-in-an-undirected-graph-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Recursive Depth First Search Algorithm)
- [Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Union Find and Disjoint Set Algorithm)](https://helloacm.com/teaching-kids-programming-count-unreachable-pairs-of-nodes-in-an-undirected-graph-union-find-and-disjoint-set-algorithm/) - Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Union Find and Disjoint Set Algorithm)
- [Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-count-unreachable-pairs-of-nodes-in-an-undirected-graph-breadth-first-search-algorithm/) - Teaching Kids Programming - Count Unreachable Pairs of Nodes in an Undirected Graph (Breadth First Search Algorithm)
- [Teaching Kids Programming - Maximum Sum of K Numbers from Front and Back of Array (Prefix/Suffix Sum Algorithm)](https://helloacm.com/teaching-kids-programming-maximum-sum-of-k-numbers-from-front-and-back-of-array-prefix-suffix-sum-algorithm/) - Teaching Kids Programming - Maximum Sum of K Numbers from Front and Back of Array (Prefix/Suffix Sum Algorithm)
- [Teaching Kids Programming - Maximum Sum of K Numbers from Front and Back of Array (Sliding Window Algorithm)](https://helloacm.com/teaching-kids-programming-maximum-sum-of-k-numbers-from-front-and-back-of-array-sliding-window/) - Teaching Kids Programming - Maximum Sum of K Numbers from Front and Back of Array (Sliding Window Algorithm)
- [Teaching Kids Programming - Eat Bananas/Apples in K Hours with Minimal R (Binary Search Algorithm)](https://helloacm.com/teaching-kids-programming-binary-search-algorithm-to-eat-bananas-apples-in-k-hours/) - Teaching Kids Programming - Binary Search Algorithm to Eat Banans/Apples in K Hours
- [Teaching Kids Programming - Greatest English Letter in Upper and Lower Case](https://helloacm.com/teaching-kids-programming-greatest-english-letter-in-upper-and-lower-case/) - Teaching Kids Programming - Greatest English Letter in Upper and Lower Case
- [Teaching Kids Programming - Recursive Depth First Search Graph Algorithm to Determine a Strongly Connected Component](https://helloacm.com/teaching-kids-programming-recursive-depth-first-search-graph-algorithm-to-determine-a-strongly-connected-component/) - Teaching Kids Programming - Recursive Depth First Search Graph Algorithm to Determine a Strongly Connected Component
- [Teaching Kids Programming - Longest Substring Without Repeating Characters - Another Version of Two Pointer / Sliding Window Algorithm](https://helloacm.com/teaching-kids-programming-longest-substring-without-repeating-characters-another-version-of-two-pointer-sliding-window-algorithm/) - Teaching Kids Programming - Longest Substring Without Repeating Characters - Another Version of Two Pointer / Sliding Window Algorithm
- [Teaching Kids Programming - Longest Substring Without Repeating Characters (Two Pointer / Sliding Window Algorithm)](https://helloacm.com/teaching-kids-programming-longest-substring-without-repeating-characters-two-pointer-sliding-window-algorithm/) - Teaching Kids Programming - Longest Substring Without Repeating Characters (Two Pointer / Sliding Window Algorithm)
- [Teaching Kids Programming - Divide and Conquer Algorithm to Find Longest Substring with Character Count of at Least K](https://helloacm.com/teaching-kids-programming-divide-and-conquer-algorithm-to-find-longest-substring-with-character-count-of-at-least-k/) - Teaching Kids Programming - Divide and Conquer Algorithm to Find Longest Substring with Character Count of at Least K
- [Teaching Kids Programming - Longest Substring with 2 Distinct Characters by Sliding Window Algorithm](https://helloacm.com/teaching-kids-programming-longest-substring-with-2-distinct-characters-by-sliding-window-algorithm/) - Teaching Kids Programming - Longest Substring with 2 Distinct Characters by Sliding Window Algorithm
- [Compute Longest Substring with At Least K Repeating Characters via Divide and Conquer Algorithm](https://helloacm.com/compute-longest-substring-with-at-least-k-repeating-characters-via-divide-and-conquer-algorithm/) - Compute the longest substring with at least K repeating characters in a string using divide and conquer algorithm
- [Two Pointer Sliding Window to Compute the Longest Substring with At Most Two Distinct Characters](https://helloacm.com/two-pointer-sliding-window-to-compute-the-longest-substring-with-at-most-two-distinct-characters/) - Two Pointer Sliding Window to Compute the Longest Substring with At Most Two Distinct Characters We can greedly expand the window to the right if it does not violate the requirement (at most two distinct characters). Then, for each iterations, if the current window has more than 2 distinct characters, we need to shrink from left side until it doesn't.
- [Two Pointer with Sliding Window Algorithm to Compute the Longest Substring with At Most K Distinct Characters](https://helloacm.com/two-pointer-with-sliding-window-algorithm-to-compute-the-longest-substring-with-at-most-k-distinct-characters/) - Two Pointer with Sliding Window Algorithm to Compute the Longest Substring with At Most K Distinct Characters Each iteration, we extend the current window one position to the right. And we compute the current window size if the number of the unique characters is less or equal to K. And if it is more than K, we need to shrink the window size by moving the left pointer .
- [Teaching Kids Programming - Minimum Distance of Two Words in a Sentence/String](https://helloacm.com/teaching-kids-programming-minimum-distance-of-two-words-in-a-sentence-string/) - Teaching Kids Programming - Minimum Distance of Two Words in a Sentence/String
- [Characteristic Attributes Essential for Successful Software Engineers](https://helloacm.com/characteristic-attributes-essential-for-successful-software-engineers/) - Characteristic Attributes Essential for Successful Software Engineers
- [Teaching Kids Programming - Closest Leaf in a Binary Tree (Breadth/Depth First Search Algorithm in Graph)](https://helloacm.com/teaching-kids-programming-closest-leaf-in-a-binary-tree-breadth-depth-first-search-in-graph/) - Teaching Kids Programming - Closest Leaf in a Binary Tree (Breadth/Depth First Search Algorithm in Graph)
- [Teaching Kids Programming - Breadth First Search Algorithm to Find Factor Combinations](https://helloacm.com/teaching-kids-programming-breadth-first-search-algorithm-to-find-factor-combinations/) - Teaching Kids Programming - Breadth First Search Algorithm to Find Factor Combinations
- [Algorithms to Compute the Factor Combinations for An Integer using DFS and BFS](https://helloacm.com/algorithms-to-compute-the-factor-combinations-for-an-integer-using-dfs-and-bfs/) - Algorithms to Compute the Factor Combinations for An Integer using DFS and BFS The same backtracking algorithm can be implemented using Breadth First Search (BFS) approach. Each node in the queue is a key-value pair where key is the current number to factorize and the value is its previous combination.Numbers can be regarded as product of its factors. For example, 8 = 2 x 2 x 2; = 2 x 4. Write a function that takes an integer n and return all possible combinations of its factors. Note: You may assume that n is always positive. Factors should be greater than 1 and less
- [Teaching Kids Programming - Implement the Counter method in Python](https://helloacm.com/teaching-kids-programming-implement-the-counter-method-in-python/) - Teaching Kids Programming - Implement the Counter method in Python
- [Teaching Kids Programming - Rearrange Characters to Make Target String (Hash Map)](https://helloacm.com/teaching-kids-programming-rearrange-characters-to-make-target-string-hash-map/) - Teaching Kids Programming - Rearrange Characters to Make Target String (Hash Map)
- [Teaching Kids Programming - Find Numbers in At Least Two Arrays Out of Three (Hash Set)](https://helloacm.com/teaching-kids-programming-find-numbers-in-at-least-two-arrays-out-of-three-hash-set/) - Teaching Kids Programming - Find Numbers in At Least Two Arrays Out of Three (Hash Set)
- [Teaching Kids Programming - Dynamic Programming Algorithm to Break a String using Given Words (Word Break)](https://helloacm.com/teaching-kids-programming-dynamic-programming-algorithm-to-break-a-string-using-given-words-word-break/) - Teaching Kids Programming - Dynamic Programming Algorithm to Break a String using Given Words (Word Break)
- [Teaching Kids Programming - Break a String into Words (Word Break) via Recursion with Memoziation - Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-break-a-string-into-words-word-break-via-recursion-with-memoziation-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Break a String into Words (Word Break) via Recursion with Memoziation - Top Down Dynamic Programming Algorithm
- [Break a Sentence into Words (Word Break Algorithms) - DFS, BFS and DP](https://helloacm.com/cc-coding-exercise-word-break-dp-bfs-dfs/) - Break a Sentence into Words (Word Break Algorithms) - DFS, BFS and DP
- [Teaching Kids Programming - Break a String into Words (Word Break) via Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-break-a-string-into-words-word-break-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Break a String into Words (Word Break) via Breadth First Search Algorithm
- [Teaching Kids Programming - Largest 3-Same-Digit Number in String](https://helloacm.com/teaching-kids-programming-largest-3-same-digit-number-in-string/) - Teaching Kids Programming - Largest 3-Same-Digit Number in String
- [Teaching Kids Programming - Partition List to Pairs that Are Divisible by K (Hash Map)](https://helloacm.com/teaching-kids-programming-partition-list-to-pairs-that-are-divisible-by-k-hash-map/) - Partition List to Pairs that Are Divisible by K (Hash Map)
- [Teaching Kids Programming - Find a Corresponding Node of a Binary Tree in a Clone of That Tree via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-find-a-corresponding-node-of-a-binary-tree-in-a-clone-of-that-tree-via-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Find a Corresponding Node of a Binary Tree in a Clone of That Tree via Recursive Depth First Search Algorithm
- [Teaching Kids Programming - Iterative Depth First Search Algorithm to Find a Corresponding Node of a Binary Tree in a Clone of That Tree](https://helloacm.com/teaching-kids-programming-iterative-depth-first-search-algorithm-to-find-a-corresponding-node-of-a-binary-tree-in-a-clone-of-that-tree/) - Teaching Kids Programming - Iterative Depth First Search Algorithm to Find a Corresponding Node of a Binary Tree in a Clone of That Tree
- [Teaching Kids Programming - Recursive Depth First Search Algorithm to Find the Sum of Deepest Leaves in a Binary Tree](https://helloacm.com/teaching-kids-programming-recursive-depth-first-search-algorithm-to-find-the-sum-of-deepest-leaves-in-a-binary-tree/) - Teaching Kids Programming - Recursive Depth First Search Algorithm to Find the Sum of Deepest Leaves in a Binary Tree
- [Teaching Kids Programming - Breadth First Search Algorithm to Find the Sum of Deepest Leaves in a Binary Tree](https://helloacm.com/teaching-kids-programming-breadth-first-search-algorithm-to-find-the-sum-of-deepest-leaves-in-a-binary-tree/) - Teaching Kids Programming - Breadth First Search Algorithm to Find the Sum of Deepest Leaves in a Binary Tree
- [Teaching Kids Programming - Algorithms to Check If Any Intervals Overlapping (Meeting Rooms)](https://helloacm.com/teaching-kids-programming-algorithms-to-check-if-any-intervals-overlapping-meeting-rooms/) - Teaching Kids Programming - Algorithms to Check If Any Intervals Overlapping (Meeting Rooms)
- [Algorithms to Check If Any Two Intervals Overlap](https://helloacm.com/algorithms-to-check-if-any-two-intervals-overlap/) - Algorithms to Check If Any Two Intervals Overlap Given a list of intervals denoted with (start, end), implement a function that returns true if none of these intervals overlap.
- [Teaching Kids Programming - Populating Next Right Pointers in Each Node (Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-populating-next-right-pointers-in-each-node-breadth-first-search-algorithm/) - Teaching Kids Programming - Populating Next Right Pointers in Each Node (Breadth First Search Algorithm)
- [Teaching Kids Programming - Backtracking Algorithm to List the Combination Sum (Recursive Depth First Search)](https://helloacm.com/teaching-kids-programming-backtracking-algorithm-to-list-the-combination-sum-recursive-depth-first-search/) - Teaching Kids Programming - Backtracking Algorithm to List the Combination Sum (Recursive Depth First Search)
- [Teaching Kids Programming - Find Combination Sum via Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-find-combination-sum-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Find Combination Sum via Breadth First Search Algorithm
- [Teaching Kids Programming - Gray Code by Recursive Mirror Algorithm](https://helloacm.com/teaching-kids-programming-gray-code-by-recursive-mirror-algorithm/) - Teaching Kids Programming - Gray Code by Recursive Mirror Algorithm
- [Teaching Kids Programming - Two Algorithms to Group Anagrams](https://helloacm.com/teaching-kids-programming-algorithms-to-group-anagrams/) - Teaching Kids Programming - Two Algorithms to Group Anagrams
- [Algorithms to Group Words by Anagrams](https://helloacm.com/algorithms-to-group-words-by-anagrams/) - Algorithms to Group Words by Anagrams This approach takes O(N) space as we need a hash map to store the occurence key and the corresponding group of words. The time requirement is O(NM) where M is the average length of the words and N is the length of the word list.
- [Teaching Kids Programming - Algorithms to Count Prefixes of a Given String (Trie Data Structure)](https://helloacm.com/teaching-kids-programming-count-prefixes-of-a-given-string-trie/) - Teaching Kids Programming - Algorithms to Count Prefixes of a Given String (Trie Data Structure)
- [Teaching Kids Programming - Remove Digit From Number to Maximize Result](https://helloacm.com/teaching-kids-programming-remove-digit-from-number-to-maximize-result/) - Teaching Kids Programming - Remove Digit From Number to Maximize Result
- [Teaching Kids Programming - All Elements in Two Binary Search Trees (Parallel Iterative Inorder Traversal Algorithm)](https://helloacm.com/teaching-kids-programming-all-elements-in-two-binary-search-trees-parallel-iterative-inorder-traversal-algorithm/) - Teaching Kids Programming - All Elements in Two Binary Search Trees (Parallel Iterative Inorder Traversal Algorithm)
- [Teaching Kids Programming - Typing Characters with Backspace (Text Editor Algorithm via Stack)](https://helloacm.com/teaching-kids-programming-typing-characters-with-backspace-text-editor-algorithm/) - Teaching Kids Programming - Typing Characters with Backspace (Text Editor Algorithm via Stack)
- [Teaching Kids Programming - Square of a List using Two Pointer Algorithm](https://helloacm.com/teaching-kids-programming-square-of-a-list-using-two-pointer-algorithm/) - Teaching Kids Programming - Square of a List using Two Pointer Algorithm
- [Teaching Kids Programming - Index Into an Infinite String (Find Substring)](https://helloacm.com/teaching-kids-programming-index-into-an-infinite-string-find-substring/) - Teaching Kids Programming - Index Into an Infinite String (Find Substring)
- [Teaching Kids Programming - Intersection of Multiple Arrays (Set and Counter)](https://helloacm.com/teaching-kids-programming-intersection-of-multiple-arrays-set-and-counter/) - Teaching Kids Programming - Intersection of Multiple Arrays (Set and Counter)
- [Teaching Kids Programming - Longest Palindromic Substring (Optimised Bruteforce and Dynamic Programming Algorithm)](https://helloacm.com/teaching-kids-programming-longest-palindromic-substring-optimised-bruteforce-and-dynamic-programming-algorithm/) - Teaching Kids Programming - Longest Palindromic Substring (Optimised Bruteforce and Dynamic Programming Algorithm)
- [Teaching Kids Programming - Longest Palindromic Substring (Expand Around Center)](https://helloacm.com/teaching-kids-programming-longest-palindromic-substring-expand-around-center/) - Teaching Kids Programming - Longest Palindromic Substring (Expand Around Center)
- [Algorithm to Compute the Length of the Longest Palindrome String](https://helloacm.com/the-length-of-the-longest-palindrome/) - Algorithm to Compute the Length of the Longest Palindrome String The first run is to count the occurences of each character and store the frequencies in a hash map e.g. unordered_map in C++.
- [Teaching Kids Programming - Longest Palindrome String From Set of Characters](https://helloacm.com/teaching-kids-programming-longest-palindrome-string-from-set-of-characters/) - Teaching Kids Programming - Longest Palindrome String From Set of Characters
- [Teaching Kids Programming - Container With Most Water (Bruteforce, Two Pointer/Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-container-with-most-water-two-pointer-algorithm/) - Teaching Kids Programming - Container With Most Water (Bruteforce, Two Pointer/Greedy Algorithm)
- [Teaching Kids Programming - Longest Increasing Path in a Matrix via Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-longest-increasing-path-in-a-matrix-via-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Longest Increasing Path in a Matrix via Top Down Dynamic Programming Algorithm
- [Teaching Kids Programming - Kth Smallest Element in a BST via Recursive Counting Algorithm](https://helloacm.com/teaching-kids-programming-kth-smallest-element-in-a-bst-via-recursive-counting-algorithm/) - Teaching Kids Programming - Kth Smallest Element in a BST via Recursive Counting Algorithm
- [How to Find the Kth Smallest Element in a BST Tree Using Java/C++?](https://helloacm.com/how-to-find-the-kth-smallest-element-in-a-bst-tree-using-java-c/) - How to Find the Kth Smallest Element in a BST Tree Using Java/C++?
- [Depth First Search Algorithm (Preorder Traversal) to Compute the Kth Smallest in a Binary Search Tree](https://helloacm.com/depth-first-search-algorithm-preorder-traversal-to-compute-the-kth-smallest-in-a-binary-search-tree/) - Depth First Search Algorithm (Preorder Traversal) to Compute the Kth Smallest in a Binary Search Tree The complexity is O(K) and the space complexity is O(K) due to the usage of stack from Recursion. Another approach would be to preorder traversal the binary search tree and save the nodes in an additional array, then we can just return the Kth element.
- [Teaching Kids Programming - Kth Smallest Element in a BST via Iterative Inorder Traversal Algorithm](https://helloacm.com/teaching-kids-programming-kth-smallest-element-in-a-bst-via-iterative-inorder-traversal-algorithm/) - Teaching Kids Programming - Kth Smallest Element in a BST via Iterative Inorder Traversal Algorithm
- [Teaching Kids Programming - Kth Smallest Element in a BST via Recursive Inorder Traversal Algorithm](https://helloacm.com/teaching-kids-programming-kth-smallest-element-in-a-bst-via-recursive-inorder-traversal-algorithm/) - Teaching Kids Programming - Kth Smallest Element in a BST via Recursive Inorder Traversal Algorithm
- [How to Turn a Binary Search Tree into a Increasing Order Search Tree?](https://helloacm.com/how-to-turn-a-binary-search-tree-into-a-increasing-order-search-tree/) - How to Turn a Binary Search Tree into a Increasing Order Search Tree? The task is to convert a Binary Search Tree into a Inceasing Order Search Tree - which is a sorted linked list - where the Tree has only right nodes.
- [Teaching Kids Programming - Inorder Traversal Algorithm to Convert Binary Search Tree to Increasing Order Search Tree](https://helloacm.com/teaching-kids-programming-inorder-traversal-algorithm-to-convert-binary-search-tree-to-increasing-order-search-tree/) - Teaching Kids Programming - Inorder Traversal Algorithm to Convert Binary Search Tree to Increasing Order Search Tree
- [Teaching Kids Programming - Tree Detection Algorithm via Union Find + Disjoint Set (Determine a Binary Tree)](https://helloacm.com/teaching-kids-programming-tree-detection-via-union-find-disjoint-set-determine-a-binary-tree/) - Teaching Kids Programming - Tree Detection via Union Find + Disjoint Set (Determine a Binary Tree)
- [Teaching Kids Programming - Tree Detection Algorithm via Breadth First Search (Determine a Binary Tree)](https://helloacm.com/teaching-kids-programming-tree-detection-algorithm-via-breadth-first-search-determine-a-binary-tree/) - Teaching Kids Programming - Tree Detection Algorithm via Breadth First Search (Determine a Binary Tree)
- [Teaching Kids Programming - Tree Detection via Depth First Search Algorithm (Determine a Binary Tree via Recursion)](https://helloacm.com/teaching-kids-programming-tree-detection-via-depth-first-search-algorithm-determine-a-binary-tree-via-recursion/) - Teaching Kids Programming - Tree Detection via Depth First Search Algorithm (Determine a Binary Tree via Recursion)
- [Algorithms to Check if a Graph is a Valid Tree by Using Disjoint Set (Union Find) and Breadth First Search](https://helloacm.com/algorithms-to-check-if-a-graph-is-a-valid-tree-by-using-disjoint-set-union-find-and-breadth-first-search/) - Algorithms to Check if a Graph is a Valid Tree by Using Disjoint Set (Union Find) and Breadth First Search
- [Teaching Kids Programming - Transform Matrix to One Connected Component using Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-transform-matrix-to-one-connected-component-using-breadth-first-search-algorithm/) - Teaching Kids Programming - Transform Matrix to One Connected Component using Breadth First Search Algorithm
- [Teaching Kids Programming - Compute the Number of Consecutive Ones Less than K using Top Down Dynamic Programming Algorithm (Recursion + Memoziation)](https://helloacm.com/teaching-kids-programming-compute-the-number-of-consecutive-ones-less-than-k-using-top-down-dynamic-programming-algorithm-recursion-memoziation/) - Teaching Kids Programming - Compute the Number of Consecutive Ones Less than K using Top Down Dynamic Programming Algorithm (Recursion + Memoziation)
- [Teaching Kids Programming - Transform Matrix to One Connected Component using Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-transform-matrix-to-one-connected-component-using-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Transform Matrix to One Connected Component using Recursive Depth First Search Algorithm
- [Teaching Kids Programming - Top K Frequent Elements (Heap and Counter)](https://helloacm.com/teaching-kids-programming-top-k-frequent-elements-heap-and-counter/) - Teaching Kids Programming - Top K Frequent Elements (Heap and Counter)
- [Teaching Kids Programming - Binary Search Algorithm and Exponential Formula (MATH) to Solve Equation x^x=2^2048](https://helloacm.com/teaching-kids-programming-binary-search-algorithm-and-exponential-formula-math-to-solve-equation-xx22048/) - Teaching Kids Programming - Binary Search Algorithm and Exponential Formula (MATH) to Solve Equation x^x=2^2048
- [Teaching Kids Programming - Maximum Absolute Value of Sublist via Kadane's Algorithm](https://helloacm.com/teaching-kids-programming-maximum-absolute-value-of-sublist-via-kadanes-algorithm/) - Teaching Kids Programming - Maximum Absolute Value of Sublist via Kadane's Algorithm
- [Teaching Kids Programming - Check if an Array Is Consecutive via Sorting Algorithm](https://helloacm.com/teaching-kids-programming-check-if-an-array-is-consecutive-via-sorting-algorithm/) - Teaching Kids Programming - Check if an Array Is Consecutive via Sorting Algorithm
- [Teaching Kids Programming - Reconstruct the Flight Itinerary using Topological Sorting Graph Algorithm (DAG)](https://helloacm.com/teaching-kids-programming-reconstruct-the-flight-itinerary-using-topological-sorting-graph-algorithm-dag/) - Teaching Kids Programming - Reconstruct the Flight Itinerary using Topological Sorting Graph Algorithm (DAG)
- [Depth First Search Algorithm to Find Leaves of a Binary Tree](https://helloacm.com/depth-first-search-algorithm-to-find-leaves-of-a-binary-tree/) - Depth First Search Algorithm to Find Leaves of a Binary Tree Finding the leaves is easy, but it is not trivial to remove them and iteratively finding new leaves until the tree is empty. We may however simulate the process, which takes time and this requires somehow a complex piece of implementation.
- [Teaching Kids Programming - Find Leaves of Binary Tree via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-find-leaves-of-binary-tree-via-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Find Leaves of Binary Tree via Recursive Depth First Search Algorithm
- [How to Find the Largest Unique Number in Array using Javascript (Functional Programming)](https://helloacm.com/how-to-find-the-largest-unique-number-in-array-using-javascript-functional-programming/) - How to Find the Largest Unique Number in Array using Javascript (Functional Programming)
- [How to Find the Largest Unique Number in Array (C++)?](https://helloacm.com/how-to-find-the-largest-unique-number-in-array/) - How to Find the Largest Unique Number in Array (C++)?
- [Python Method to Find the Largest Unique Number in an Array](https://helloacm.com/python-method-to-find-the-largest-unique-number-in-an-array/) - Python Method to Find the Largest Unique Number in an Array Then, we can combine the collections.Counter and filter, and use the max function to return the maximum value.
- [Teaching Kids Programming - Largest Unique Number via Hash Table, Bucket Sorting and GroupBy Algorithms](https://helloacm.com/teaching-kids-programming-largest-unique-number-via-hash-table-bucket-sorting-and-groupby-algorithms/) - Teaching Kids Programming - Largest Unique Number via Hash Table, Bucket Sorting and GroupBy Algorithms
- [Teaching Kids Programming - Permutation of K out of N Visible Blocks via Top Down Dynamic Programming Algorithm](https://helloacm.com/teaching-kids-programming-permutation-of-k-out-of-n-visible-blocks-via-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Permutation of K out of N Visible Blocks via Top Down Dynamic Programming Algorithm
- [Teaching Kids Programming - Finding All Subsets by Bitmasking Algorithm](https://helloacm.com/teaching-kids-programming-finding-all-subsets-by-bitmasking-algorithm/) - Teaching Kids Programming - Finding All Subsets by Bitmasking Algorithm
- [Generate the Power SubSet using Depth First Search Algorithm](https://helloacm.com/generate-the-power-subset-using-depth-first-search-algorithm/) - Recursive DFS to generate the power subset
- [Teaching Kids Programming - Finding All Subsets via Backtracking Algorithm (Recursion / Depth First Search)](https://helloacm.com/teaching-kids-programming-finding-all-subsets-via-backtracking-algorithm-recursion-depth-first-search/) - Teaching Kids Programming - Finding All Subsets via Backtracking Algorithm (Recursion / Depth First Search)
- [Teaching Kids Programming - Cascading Algorithm to Find All Subsets](https://helloacm.com/teaching-kids-programming-cascading-algorithm-to-find-all-subsets/) - Teaching Kids Programming - Cascading Algorithm to Find All Subsets
- [Teaching Kids Programming - Find the Difference of Two Arrays (via Hash Set)](https://helloacm.com/teaching-kids-programming-find-the-difference-of-two-arrays-via-hash-set/) - Teaching Kids Programming - Find the Difference of Two Arrays (via Hash Set)
- [Teaching Kids Programming - Back-tracking Depth First Search Algorithm to Restore IP Addresses](https://helloacm.com/teaching-kids-programming-back-tracking-depth-first-search-algorithm-to-restore-ip-addresses/) - Teaching Kids Programming - Back-tracking Depth First Search Algorithm to Restore IP Addresses
- [Teaching Kids Programming - Pass by Values, References or Object-References in Python](https://helloacm.com/teaching-kids-programming-pass-by-values-references-or-object-references-in-python/) - Teaching Kids Programming - Pass by Values, References or Object-References in Python
- [Teaching Kids Programming - Left/Right Side View of a Binary Tree using Depth/Breadth First Search Algorithms](https://helloacm.com/teaching-kids-programming-left-right-side-view-of-a-binary-tree-using-depth-breadth-first-search-algorithms/) - Teaching Kids Programming - Left/Right Side View of a Binary Tree using Depth/Breadth First Search Algorithms
- [Depth First Search and Breadth First Search Algorithm to Compute the Left Side View of a Binary Tree](https://helloacm.com/depth-first-search-and-breadth-first-search-algorithm-to-compute-the-left-side-view-of-a-binary-tree/) - Depth First Search and Breadth First Search Algorithm to Compute the Left Side View of a Binary Tree Tree problems can often be solved using Depth First Search (DFS) algorithm or Breadth First Search (BFS) Algorithm. These are two typical tree traversal algorithms which can also be applied to graph problems.
- [Teaching Kids Programming - The Left Side View of Binary Tree via Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-the-left-side-view-of-binary-tree-via-breadth-first-search-algorithm/) - Left side view of a binary tree via Breadth First Search Algorithm
- [Calculate the Number of Boundary Cubes and Boundary Squares of a NxN Rubik Cube](https://helloacm.com/calculate-the-boundary-cubes-and-boundary-squares-of-a-n-rubik-cube/) - Calculate the Boundary Cubes and Boundary Squares of a n-Rubik Cube How about the cubes? A corner cube is shared by three faces and a edge cube is shared by 2 faces so that should be taken into consideration.
- [Teaching Kids Programming - How Many Solvable Permutations for a 3x3 Rubik's Cube? (Math, Combinatorics)](https://helloacm.com/teaching-kids-programming-how-many-permutations-for-a-3x3-rubiks-cube-math-combinatorics/) - Teaching Kids Programming - How Many Solvable Permutations for a 3x3 Rubik's Cube? (Math, Combinatorics)
- [Teaching Kids Programming - Counting the Number of Squares and Rectangles of a NxN Rubik Cube](https://helloacm.com/teaching-kids-programming-counting-the-number-of-squares-and-rectangles-for-a-nxn-rubik-cube/) - Teaching Kids Programming - Counting the Number of Squares and Rectangles of a NxN Rubik Cube
- [How Many Squares/Rectangles Does a Rubik Cube Have?](https://helloacm.com/how-many-squares-rectangles-does-a-rubik-cube-have/) - How Many Squares/Rectangles Does a Rubik Cube Have? There are 84 squares, and 132 rectangles in a 3x3 rubik cube. For a 7x7 rubik cube, it will be hard to count. But the computers are really good at it (in fact, the above Javascript code runs pretty fast, for a small N).
- [Teaching Kids Programming - Greedy/Simulation Algorithm to Validate Stack Sequences](https://helloacm.com/teaching-kids-programming-greedy-simulation-algorithm-to-validate-stack-sequences/) - Teaching Kids Programming - Greedy/Simulation Algorithm to Validate Stack Sequences
- [Teaching Kids Programming - Algorithms to Rotate an Array](https://helloacm.com/teaching-kids-programming-algorithms-to-rotate-an-array/) - Teaching Kids Programming - Algorithms to Rotate an Array
- [Teaching Kids Programming - Algorithms to Determine a Happy Number](https://helloacm.com/teaching-kids-programming-algorithms-to-determine-a-happy-number/) - Algorithms to check if an integer is happy
- [Teaching Kids Programming - Words That Can Be Typed using a Single Keyboard Row (Hash Set)](https://helloacm.com/teaching-kids-programming-words-that-can-be-typed-using-a-single-keyboard-row-hash-set/) - Teaching Kids Programming - Words That Can Be Typed using a Single Keyboard Row (Hash Set)
- [Teaching Kids Programming - Sum of Geometric Progression (Math Proof and Python Function)](https://helloacm.com/teaching-kids-programming-sum-of-geometric-progression-math-proof-and-python-function/) - Teaching Kids Programming - Sum of Geometric Progression (Math Proof and Python Function)
- [Teaching Kids Programming - Delete the Middle Node of a Linked List (Fast and Slow Pointer)](https://helloacm.com/teaching-kids-programming-delete-the-middle-node-of-a-linked-list-fast-and-slow-pointer/) - Teaching Kids Programming - Delete the Middle Node of a Linked List (Fast and Slow Pointer)
- [Teaching Kids Programming - Draw a Tree in Python using Turtle Graphics (Recursion)](https://helloacm.com/teaching-kids-programming-draw-a-tree-in-python-using-turtle-graphics-recursion/) - Teaching Kids Programming - Draw a Tree in Python using Turtle Graphics (Recursion)
- [Bug-fixes for PHP Online Logo Interpreter](https://helloacm.com/bug-fixes-for-php-online-logo-interpreter/) - In December, 2006, I wrote a PHP Logo Interpreter [link here]. At that time, PHP4 was dominanting. Everything in PHP4 is passed by value. For example, if you need to duplicate an object, you can simply copy it by assigning to another variable. The workaround to pass by reference in PHP4 is to give an symbol & before variables. For example, the following illustrates the pass-by-reference and pass-by-value to function parameters in PHP4.
- [A Concise Python Function to Check Subsequence using Iterator](https://helloacm.com/python-function-to-check-subsequence/) - Subsequence Algorithm implementation in Python
- [The Subsequence Algorithm for Two Strings - How to Check if a String is Subsequence of Another?](https://helloacm.com/the-subsequence-algorithm-for-two-strings-how-to-check-if-a-string-is-subsequence-of-another/) - The Subsequence Algorithm for Two Strings - How to Check if a String is Subsequence of Another? If source string s is larger than source string t, s must not be a subsequence of t. Otherwise, we can have two pointers i and j, pointing initialially to the begining of the two strings s and t respectively. If at any time, s[i] == t[j], we move both pointers to next position, otherwise, we need to increment j, until either of the pointer is beyond the end of the source string.
- [Algorithms to Check if a String is a Subsequence String of Another String](https://helloacm.com/algorithms-to-check-if-a-string-is-a-subsequence-string-of-another-string/) - Algorithms to Check if a String is a Subsequence String of Another String Given two strings s1 and s2, determine if s1 is a subsequence of s2. A string a is a subsequence of another string b if you can delete some (or 0) characters from b, without changing the order, and get a.
- [GoLang Function to Check if a String is a Subsequence of Another](https://helloacm.com/golang-function-of-checking-is-subsequence/) - GoLang Function to Check if a String is a Subsequence of Another
- [Teaching Kids Programming - Is Subsequence Algorithm via Recursion (Greedy)](https://helloacm.com/teaching-kids-programming-is-subsequence-algorithm-via-recursion-greedy/) - Teaching Kids Programming - Is Subsequence Algorithm via Recursion (Greedy)
- [Teaching Kids Programming - Is Subsequence Algorithm via Two Pointer](https://helloacm.com/teaching-kids-programming-is-subsequence-algorithm-via-two-pointer/) - Two pointer algorithm to check if subsequence
- [Teaching Kids Programming - How to Make Flashing Lights on Microbit?](https://helloacm.com/teaching-kids-programming-how-to-make-flashing-lights-on-microbit/) - Teaching Kids Programming - How to Make Flashing Lights on Microbit?
- [MSDOS .COM Assembly TV Colour Screen](https://helloacm.com/msdos-com-assembly-tv-colour-screen/) - In [here], a colour TV screen is printed using Javascript. The following presents the MSDOS .COM format (16-bit executable) which shows the colour TV screen. The file size of this executable is 56 bytes only. However, the latest Windows versions discontinue the support of this format e.g. if you run it you will get the following error.
- [Teaching Kids Programming - How to Draw a Chess Board using Python and Turtle Graphics?](https://helloacm.com/teaching-kids-programming-how-to-draw-a-chess-board-using-python-and-turtle-graphics/) - Teaching Kids Programming - How to Draw a Chess Board using Python and Turtle Graphics?
- [Teaching Kids Programming - How to Draw a Spiral Shape using Python and Turtle Graphics?](https://helloacm.com/teaching-kids-programming-how-to-draw-a-spiral-shape-using-python-and-turtle-graphics/) - Teaching Kids Programming - How to Draw a Spiral Shape using Python and Turtle Graphics?
- [Draw a Chess Board using LOGO (Turtle Graphics)](https://helloacm.com/draw-a-chess-board-using-logo/) - Draw a Chess Board using LOGO (Turtle Graphics)
- [Teaching Kids Programming - Check if a String is Prefix/Suffix in Python (Two Pointer Algorithm)](https://helloacm.com/teaching-kids-programming-check-if-a-string-is-prefix-suffix-in-python-two-pointer-algorithm/) - Teaching Kids Programming - Check if a String is Prefix/Suffix in Python (Two Pointer Algorithm)
- [Teaching Kids Programming - How to Draw a Star using Turtle Graphics? (Math, Shapes, Geometry)](https://helloacm.com/teaching-kids-programming-how-to-draw-a-star-using-turtle-graphics-math-shapes-geometry/) - Teaching Kids Programming - How to Draw a Star using Turtle Graphics? (Math, Shapes, Geometry)
- [Teaching Kids Programming - Probability of Rolling a Dice: Strictly Increasing Order One After Another](https://helloacm.com/teaching-kids-programming-probability-of-rolling-a-dice-strictly-increasing-order-one-after-another/) - Teaching Kids Programming - Probability of Rolling a Dice: Strictly Increasing Order One After Another
- [Teaching Kids Programming - Probability of Two Sixes in a Row when Rolling a Dice Three Times (One After Another)](https://helloacm.com/teaching-kids-programming-probability-of-two-sixes-in-a-row-when-rolling-three-dices-math/) - Teaching Kids Programming - Probability of Two Sixes in a Row when Rolling a Dice Three Times (One After Another)
- [Teaching Kids Programming - Find Three Consecutive Integers That Sum to a Given Number](https://helloacm.com/teaching-kids-programming-find-three-consecutive-integers-that-sum-to-a-given-number/) - Find Three Consecutive Integers That Sum to a Given Number
- [Teaching Kids Programming - Longest Path in Binary Tree via Diameter Algorithm (DFS + BFS)](https://helloacm.com/teaching-kids-programming-longest-path-in-binary-tree-via-diameter-algorithm-dfs-bfs/) - Teaching Kids Programming - Longest Path in Binary Tree via Diameter Algorithm (DFS + BFS)
- [Teaching Kids Programming - Simple AI Algorithm of Decision Rules/Trees in Microbit Apple Catching Game](https://helloacm.com/teaching-kids-programming-simple-ai-algorithm-of-decision-rules-trees-in-microbit-apple-catching-game/) - Teaching Kids Programming - Simple AI Algorithm of Decision Rules/Trees in Microbit Apple Catching Game
- [Microbit Programming: Introduction to AI - Letting Computer Play the Game](https://helloacm.com/microbit-programming-introduction-to-ai-letting-computer-play-the-game/) - Microbit Programming: Introduction to AI - Letting Computer Play the Game There is no real AI - the Microbit would just follow exact instructions as we've taught it. The smartness comes from the decision making - which can be perfected interpreted by the computer - making decisions based on the current circumstances which can be computed based on the existing conditions (variables).
- [Teaching Kids Programming - Design and Develop an Apple Catching Game on Microbit using Python](https://helloacm.com/teaching-kids-programming-design-and-develop-an-apple-catching-game-on-microbit-using-python/) - Teaching Kids Programming - Design and Develop an Apple Catching Game on Microbit using Python
- [Teaching Kids Programming - Introduction to Microbit Programming in Python](https://helloacm.com/teaching-kids-programming-introduction-to-microbit-programming-in-python/) - Teaching Kids Programming - Introduction to Microbit Programming in Python
- [Microbit Programming: How to Make a Catching-Apple Game by Using Sprites Objects?](https://helloacm.com/microbit-programming-how-to-make-a-catching-apple-game-by-using-sprites-objects/) - Microbit Programming: How to Make a Catching-Apple Game by Using Sprites Objects? Here, we only reset the game, when the apple is not on the ground, so you don't accidentally reset the game while playing. And we reset the score to zero. Also the apple needs to be moving to another initial random location.
- [Teaching Kids Programming - Introduction to BASH Commands](https://helloacm.com/teaching-kids-programming-introduction-to-bash-commands/) - Teaching Kids Programming - Introduction to BASH Commands
- [Teaching Kids Programming - Turtle Graphics/Canvas Programming in Python](https://helloacm.com/teaching-kids-programming-turtle-graphics-canvas-programming-in-python/) - Teaching Kids Programming - Turtle Graphics/Canvas Programming in Python
- [Teaching Kids Programming - Algorithm to Compute the Smallest Value of the Rearranged Number (Math)](https://helloacm.com/teaching-kids-programming-smallest-value-of-the-rearranged-number/) - Teaching Kids Programming - Smallest Value of the Rearranged Number
- [The Overlapping Rectangles using CSS and Javascript](https://helloacm.com/the-overlapping-rectangles-using-css-and-javascript/) - The Overlapping Rectangles using CSS and Javascript Finally, we can use Javascript to define the clicking behaivor. We can define each Div's onclick event but that is not an elegant solution as there will be duplicate code and you have to manually associate the behavior for each rectangle by ID explicitly.
- [Teaching Kids Programming - Proof of Logarithm Rules: log(ab)=log(a)+log(b) and log(a/b)=log(a)-log(b)](https://helloacm.com/teaching-kids-programming-proof-of-logarithm-rules-logablogalogb-and-loga-bloga-logb/) - Teaching Kids Programming - Proof of Logarithm Rules: log(ab)=log(a)+log(b) and log(a/b)=log(a)-log(b)
- [Teaching Kids Programming - Math Simplified Fractions where Denominator is Less-than-or-equal-to N](https://helloacm.com/teaching-kids-programming-math-simplified-fractions-where-denominator-is-less-than-or-equal-to-n/) - Teaching Kids Programming - Math Simplified Fractions where Denominator is Less-than-or-equal-to N
- [Teaching Kids Programming - Remove One Element to Make the Array Strictly Increasing (LIS Algorithms)](https://helloacm.com/teaching-kids-programming-remove-one-element-to-make-the-array-strictly-increasing-lis-algorithms/) - Teaching Kids Programming - Remove One Element to Make the Array Strictly Increasing (LIS Algorithms)
- [Teaching Kids Programming - Recursion in Five Minutes](https://helloacm.com/teaching-kids-programming-recursion-in-five-minutes/) - Teaching Kids Programming - Recursion in Five Minutes The factorial function f(n) implemented in Python using Recursion:
- [How to Compute the Maximum Average Subarray?](https://helloacm.com/how-to-compute-the-maximum-average-subarray/) - How to Compute the Maximum Average Subarray? Given an array that has n integers, find a sub array of given length k that has the maximum average value. Write a function that outputs the maximum average value.
- [Teaching Kids Programming - Sort Even and Odd Indices Independently (Merge and Sort Algorithm)](https://helloacm.com/teaching-kids-programming-sort-even-and-odd-indices-independently-merge-and-sort-algorithm/) - Teaching Kids Programming - Sort Even and Odd Indices Independently
- [Teaching Kids Programming - Clone (Deep Copy) a Undirected Connected Graph using Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-clone-deep-copy-a-undirected-connected-graph-using-breadth-first-search-algorithm/) - Teaching Kids Programming - Clone (Deep Copy) a Undirected Connected Graph using Breadth First Search Algorithm
- [Teaching Kids Programming - Clone (Deep Copy) a Undirected Connected Graph using Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-clone-deep-copy-a-undirected-connected-graph-using-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Clone (Deep Copy) a Undirected Connected Graph using Recursive Depth First Search Algorithm
- [Teaching Kids Programming - How to Check if Two Strings Anagrams?](https://helloacm.com/teaching-kids-programming-how-to-check-if-two-strings-anagrams/) - Teaching Kids Programming - How to Check if Two Strings Anagrams? Also, with the usage of defaultdict, we don't need to check if a key is existent before we update the item, just make sure specify a default type/constructor - which is int:
- [Teaching Kids Programming - Estimate the Math Continued Fraction Value in Python (Recursion and Iterative Algorithm)](https://helloacm.com/teaching-kids-programming-estimate-the-continued-fraction-value-in-python-recursion-and-iterative-algorithm/) - Teaching Kids Programming - Estimate the Continued Fraction Value in Python (Recursion and Iterative Algorithm)
- [Teaching Kids Programming - Top Down and Bottom Up Recursive Algorithms to Determine a Balanced Binary Tree](https://helloacm.com/teaching-kids-programming-top-down-and-bottom-up-recursive-algorithms-to-determine-a-balanced-binary-tree/) - Teaching Kids Programming - Top Down and Bottom Up Recursive Algorithms to Determine a Balanced Binary Tree
- [Teaching Kids Programming - Index with Equal Left and Right Sums (Prefix and Suffix Sum Algorithm)](https://helloacm.com/teaching-kids-programming-index-with-equal-left-and-right-sums-prefix-and-suffix-sum-algorithm/) - Teaching Kids Programming - Index with Equal Left and Right Sums (Prefix and Suffix Sum Algorithm)
- [Teaching Kids Programming - Rearrange Array Elements by Sign (Two Pointer Algorithm)](https://helloacm.com/teaching-kids-programming-rearrange-array-elements-by-sign-two-pointer-algorithm/) - Teaching Kids Programming - Rearrange Array Elements by Sign (Two Pointer Algorithm)
- [Teaching Kids Programming - Binary and Decimal Conversion Algorithms](https://helloacm.com/teaching-kids-programming-binary-and-decimal-conversion-algorithms/) - Teaching Kids Programming - Binary and Decimal Conversion Algorithms
- [Teaching Kids Programming - Alpha Beta Pruning Algorithm on NegaMax (Game Theory)](https://helloacm.com/teaching-kids-programming-alpha-beta-pruning-algorithm-on-negamax-game-theory/) - Teaching Kids Programming - Alpha Beta Pruning Algorithm on NegaMax (Game Theory)
- [Teaching Kids Programming - Introduction to Two Players Zero-Sum Game (Number Halving)](https://helloacm.com/teaching-kids-programming-introduction-to-two-players-zero-sum-game-number-halving/) - Teaching Kids Programming - Introduction to Two Players Zero-Sum Game (Number Halving)
- [Teaching Kids Programming - Define Tic Tac Toe using Game Theory Terminologies](https://helloacm.com/teaching-kids-programming-define-tic-tac-toe-using-game-theory-terminologies/) - Teaching Kids Programming - Define Tic Tac Toe using Game Theory Terminologies
- [Teaching Kids Programming - MinMax Algorithm in Game Tree (Game Theory, Tic Tac Toe)](https://helloacm.com/teaching-kids-programming-minmax-algorithm-in-game-tree-game-theory-tic-tac-toe/) - Teaching Kids Programming - MinMax Algorithm in Game Tree (Game Theory, Tic Tac Toe)
- [Teaching Kids Programming - Alpha-Beta Pruning Algorithm (Game Theory)](https://helloacm.com/teaching-kids-programming-alpha-beta-pruning-algorithm-game-theory/) - Teaching Kids Programming - Alpha-Beta Pruning Algorithm (Game Theory)
- [Teaching Kids Programming - NegaMax Algorithm (Game Theory)](https://helloacm.com/teaching-kids-programming-negamax-algorithm-game-theory/) - Teaching Kids Programming - NegaMax Algorithm (Game Theory)
- [Teaching Kids Programming - Duplicate Numbers of Max Distance in Array (Sliding Window/Two Pointer Algorithms)](https://helloacm.com/teaching-kids-programming-duplicate-numbers-of-max-distance-in-array-sliding-window-two-pointer-algorithms/) - Teaching Kids Programming - Duplicate Numbers of Max Distance in Array (Sliding Window/Two Pointer Algorithms)
- [Teaching Kids Programming - Minimum Moves to Reach Target Score with Constraints (Greedy Algorithm)](https://helloacm.com/teaching-kids-programming-minimum-moves-to-reach-target-score-with-constraints-greedy-algorithm/) - Teaching Kids Programming - Minimum Moves to Reach Target Score with Constraints (Greedy Algorithm)
- [Iterative and Recursion Algorithms to Compute the Number of Steps to Reduce a Number to Zero](https://helloacm.com/iterative-and-recursion-algorithms-to-compute-the-number-of-steps-to-reduce-a-number-to-zero/) - Iterative and Recursion Algorithms to Compute the Number of Steps to Reduce a Number to Zero We can simulate the process until we make the number zero.
- [Teaching Kids Programming - Min Number of Steps to Reduce a Number to Zero](https://helloacm.com/teaching-kids-programming-min-number-of-steps-to-reduce-a-number-to-zero/) - Teaching Kids Programming - Min Number of Steps to Reduce a Number to Zero
- [Teaching Kids Programming - Search Engine Algorithm (Word Matching) using Trie (Prefix Tree) and Depth First Search](https://helloacm.com/teaching-kids-programming-search-engine-algorithm-using-trie-prefix-tree-and-depth-first-search-algorithm/) - Teaching Kids Programming - Search Engine Algorithm using Trie (Prefix Tree) and Depth First Search Algorithm
- [Teaching Kids Programming - Two Pointer Algorithm to Capitalize the Title String](https://helloacm.com/teaching-kids-programming-two-pointer-algorithm-to-capitalize-the-title-string/) - Teaching Kids Programming - Two Pointer Algorithm to Capitalize the Title String
- [The O(N) Increasing Triplet Subsequence Algorithm](https://helloacm.com/the-on-increasing-triplet-subsequence-algorithm/) - The O(N) Increasing Triplet Subsequence Algorithm This greedy approach works, as we are iterating the array from left to the right. If we find out a number that is different than the two numbers we have found - and both numbers are smaller than the current number, we know it has a increasing triplet subsequence.
- [Teaching Kids Programming - Increasing Triplet Subsequence Algorithm](https://helloacm.com/teaching-kids-programming-increasing-triplet-subsequence-algorithm/) - Teaching Kids Programming - Increasing Triplet Subsequence Algorithm
- [Teaching Kids Programming - Longest Even Value Path in Binary Tree using Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-longest-even-value-path-in-binary-tree-using-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Longest Even Value Path in Binary Tree using Recursive Depth First Search Algorithm
- [Teaching Kids Programming - Longest Even Value Path in Binary Tree via Graph Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-longest-even-value-path-in-binary-tree-via-graph-breadth-first-search-algorithm/) - Teaching Kids Programming - Longest Even Value Path in Binary Tree via Graph Breadth First Search Algorithm
- [Teaching Kids Programming - Longest Path in Binary Tree via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-longest-path-in-binary-tree-via-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Longest Path in Binary Tree via Recursive Depth First Search Algorithm
- [Teaching Kids Programming - Check if Every Row and Column Contains All Numbers (XOR and Hash Set)](https://helloacm.com/teaching-kids-programming-check-if-every-row-and-column-contains-all-numbers-xor-and-hash-set/) - Teaching Kids Programming - Check if Every Row and Column Contains All Numbers
- [Javascript Function to Convert Hex String to ASCII Characters (Hexadecimal)](https://helloacm.com/javascript-function-to-convert-hex-string-to-ascii-characters-hexadecimal/) - Javascript Function to Convert Hex String to ASCII Characters (Hexadecimal)
- [Teaching Kids Programming - Check if All A's Appears Before All B's (itertools.groupby)](https://helloacm.com/teaching-kids-programming-check-if-all-as-appears-before-all-bs-itertools-groupby/) - Teaching Kids Programming - Check if All A's Appears Before All B's (itertools.groupby)
- [Teaching Kids Programming - Split String with Same Distinct Counts (Sliding Window)](https://helloacm.com/teaching-kids-programming-split-string-with-same-distinct-counts-sliding-window/) - Teaching Kids Programming - Split String with Same Distinct Counts (Sliding Window)
- [Teaching Kids Programming - Proof of Rule: Integer Divisible By 3](https://helloacm.com/teaching-kids-programming-proof-of-rule-integer-divisible-by-3/) - Teaching Kids Programming - Proof of Rule: Integer Divisible By 3
- [Teaching Kids Programming - Topological Sort Algorithm on Directed Graphs (Course Schedule, BFS)](https://helloacm.com/teaching-kids-programming-topological-sort-algorithm-on-directed-graphs-course-schedule-bfs/) - Teaching Kids Programming - Topological Sort Algorithm on Directed Graphs (Course Schedule, BFS)
- [Teaching Kids Programming - Minimum Starting Nodes to Visit Graph (Topological Sort, Indegree)](https://helloacm.com/teaching-kids-programming-minimum-starting-nodes-to-visit-graph-topological-sort-indegree/) - Teaching Kids Programming - Minimum Starting Nodes to Visit Graph (Topological Sort, Indegree)
- [Teaching Kids Programming - Compute Minimum Absolute Difference of Two Numbers in an Array](https://helloacm.com/teaching-kids-programming-compute-minimum-absolute-difference-of-two-numbers-in-an-array/) - Teaching Kids Programming - Compute Minimum Absolute Difference of Two Numbers in an Array
- [Teaching Kids Programming - Day of the Year (Leap Year Algorithm)](https://helloacm.com/teaching-kids-programming-day-of-the-year-leap-year-algorithm/) - Teaching Kids Programming - Day of the Year (Leap Year Algorithm)
- [Teaching Kids Programming - Split Tree to Maximize Product (Recursive Depth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-split-tree-to-maximize-product-recursive-depth-first-search-algorithm/) - Teaching Kids Programming - Split Tree to Maximize Product (Recursive Depth First Search Algorithm)
- [Teaching Kids Programming - Find Partition Equal Subset Sum (Bottom Up Dynamic Programming Algorithm)](https://helloacm.com/teaching-kids-programming-find-partition-equal-subset-sum-bottom-up-dynamic-programming-algorithm/) - Teaching Kids Programming - Find Partition Equal Subset Sum (Bottom Up Dynamic Programming Algorithm)
- [Teaching Kids Programming - Find Partition Equal Subset Sum (Top Down Dynamic Programming Algorithm)](https://helloacm.com/teaching-kids-programming-find-partition-equal-subset-sum-top-down-dynamic-programming-algorithm/) - Teaching Kids Programming - Find Partition Equal Subset Sum (Top Down Dynamic Programming Algorithm)
- [Teaching Kids Programming - Longest Strictly Increasing Then Decreasing Sublist](https://helloacm.com/teaching-kids-programming-longest-strictly-increasing-then-decreasing-sublist/) - Teaching Kids Programming - Longest Strictly Increasing Then Decreasing Sublist
- [The enumerate method in Magik Programming](https://helloacm.com/the-enumerate-method-in-magik-programming/) - The enumerate method in Magik Programming Please note that the Magik does support the tuple, however, the tuple cannot be assigned to a tuple variable directly.
- [SteemTools Update (v0.0.12): Your Downvotes, Wallet Update, Top Witnesses, Switch To](https://helloacm.com/steemtools-update-v0-0-12-your-downvotes-wallet-update-top-witnesses-switch-to/) - SteemTools Update (v0.0.12): Your Downvotes, Wallet Update, Top Witnesses, Switch To
- [Teaching Kids Programming - Find Subsequence of Length K With the Largest Sum (Greedy, Sliding Window)](https://helloacm.com/teaching-kids-programming-find-subsequence-of-length-k-with-the-largest-sum/) - Teaching Kids Programming - Find Subsequence of Length K With the Largest Sum
- [Teaching Kids Programming - Finding Largest K Value with its Negative in Array using Hash Table/Set (K and -K)](https://helloacm.com/teaching-kids-programming-finding-largest-k-value-with-its-negative-in-array-using-hash-table-set-k-and-k/) - Teaching Kids Programming - Finding Largest K Value with its Negative in Array using Hash Table/Set (K and -K)
- [Teaching Kids Programming - Find First Recurring Character using Hash Table/Set](https://helloacm.com/teaching-kids-programming-find-first-recurring-character-using-hash-table-set/) - Teaching Kids Programming - Find First Recurring Character using Hash Table/Set
- [Teaching Kids Programming - Find Gene Mutation Groups via Recursive Depth First Search Algorithm](https://helloacm.com/teaching-kids-programming-find-gene-mutation-groups-via-depth-first-search-algorithm/) - Teaching Kids Programming - Find Gene Mutation Groups via Depth First Search Algorithm
- [Teaching Kids Programming - Find Gene Mutation Groups via Breadth First Search Algorithm](https://helloacm.com/teaching-kids-programming-find-gene-mutation-groups-via-breadth-first-search-algorithm/) - Teaching Kids Programming - Find Gene Mutation Groups via Breadth First Search Algorithm
- [Teaching Kids Programming - Find Gene Mutation Groups via UnionFind Algorithm (Disjoint Set)](https://helloacm.com/teaching-kids-programming-find-gene-mutation-groups-via-unionfind-algorithm-disjoint-set/) - Teaching Kids Programming - Find Gene Mutation Groups via UnionFind Algorithm (Disjoint Set)
- [Algorithm to Truncate Sentence](https://helloacm.com/algorithm-to-truncate-sentence/) - Sentence Truncated Algorithm in Python and C++
- [How to Truncate a String in PHP?](https://helloacm.com/how-to-truncate-a-string-in-php/) - PHP Function to truncate a string How to Truncate a String in PHP?
- [Teaching Kids Programming - Algorithm to Truncate Sentence via Split Function](https://helloacm.com/teaching-kids-programming-algorithm-to-truncate-sentence-via-split-function/) - Teaching Kids Programming - Algorithm to Truncate Sentence via Split Function
- [Teaching Kids Programming - QuickSort Algorithm Simply Explained (Python)](https://helloacm.com/teaching-kids-programming-quicksort-algorithm-simply-explained/) - Teaching Kids Programming - QuickSort Algorithm Simply Explained The idea of QuickSort algorithm is to first pick a pivot number (which can be first, last, middle, or random). Then, we go through the list to partition the list into three parts. The smaller elements, the equal parts, and the bigger parts.
- [Teaching Kids Programming - Merge Sort Algorithm Simply Explained (Python)](https://helloacm.com/teaching-kids-programming-mergesort-simply-explained/) - Teaching Kids Programming - MergeSort Simply Explained Based on this we can recursive apply merging sorting algorithm to a list. We continuously divide the list into equal two parts. When the partition size is small enough (one element or none), we know it is by natural sorted. Then we start merge these small partitions into bigger partitions until we get the entire list sorted.
- [Teaching Kids Programming - Bubble Sort Implementation in Python (Simple Sorting Algorithm)](https://helloacm.com/teaching-kids-programming-bubble-sorting-simple-sorting-algorithm/) - Teaching Kids Programming - Bubble Sorting (Simple Sorting Algorithm)
- [Teaching Kids Programming - Selection Sort Implementation in Python (Simple Sorting Algorithm)](https://helloacm.com/teaching-kids-programming-selection-sorting-simple-sorting-algorithm/) - Teaching Kids Programming - Selection Sorting (Simple Sorting Algorithm)
- [Teaching Kids Programming - Insertion Sort in Python (Simple Sorting Algorithm)](https://helloacm.com/teaching-kids-programming-insertion-sort-in-python-simple-sorting-algorithm/) - Teaching Kids Programming - Insertion Sort in Python (Simple Sorting Algorithm)
- [Teaching Kids Programming - Counting Sort Algorithm in Python](https://helloacm.com/teaching-kids-programming-counting-sort-algorithm-in-python/) - Teaching Kids Programming - Counting Sort Algorithm in Python
- [Javascript Function to Update the Query String Value of a URL String](https://helloacm.com/javascript-function-to-update-the-query-string-value-of-a-url-string/) - Javascript Function to Update the Query String Value of a URL String
- [Teaching Kids Programming - Algorithms to Check if Linked List Strictly Increasing](https://helloacm.com/teaching-kids-programming-algorithms-to-check-if-linked-list-strictly-increasing/) - Teaching Kids Programming - Algorithms to Check if Linked List Strictly Increasing
- [Teaching Kids Programming - Insert Into Linked List (Node Insertion Algorithm)](https://helloacm.com/teaching-kids-programming-insert-into-linked-list-node-insertion-algorithm/) - Teaching Kids Programming - Insert Into Linked List (Node Insertion Algorithm)
- [Teaching Kids Programming - Algorithms to Count Numbers with Odd Number of Digits](https://helloacm.com/teaching-kids-programming-algorithms-to-check-odd-number-of-digits/) - Teaching Kids Programming - Algorithms to Count Numbers with Odd Number of Digits
- [Teaching Kids Programming - Counting Maximal Value Roots in Binary Tree (Recursive Post-Order Traversal - DFS Algorithm)](https://helloacm.com/teaching-kids-programming-counting-maximal-value-roots-in-binary-tree-recursive-post-order-traversal-dfs-algorithm/) - Teaching Kids Programming - Counting Maximal Value Roots in Binary Tree (Recursive Post-Order Traversal - DFS Algorithm)
- [Teaching Kids Programming - Number of Sublists with Max in Interval](https://helloacm.com/teaching-kids-programming-number-of-sublists-with-max-in-interval/) - Teaching Kids Programming - Number of Sublists with Max in Interval
- [Teaching Kids Programming - Repeated K-Length Substrings (Sliding Window)](https://helloacm.com/teaching-kids-programming-repeated-k-length-substrings-sliding-window/) - Teaching Kids Programming - Repeated K-Length Substrings (Sliding Window)
- [Count the Repeated K-Length Substrings](https://helloacm.com/count-the-repeated-k-length-substrings/) - C++ algorithm to count the K-substring that occurs more than once.
- [Performance Testing the HDD/SSD/NVme Hard Disk speed on VPS/Dedicated Server](https://helloacm.com/testing-the-hddssd-disk-speed-on-vpsdedicated-server/) - Testing the HDD/SSD disk speed on VPS/Dedicated Server - Performance Testing the HDD/SSD/NVme Hard Disk speed on VPS/Dedicated Server
- [Teaching Kids Programming - Python Function to Find the Mode in an Array (Most Frequent Number)](https://helloacm.com/teaching-kids-programming-python-function-to-find-the-mode-in-an-array-most-frequent-number/) - Teaching Kids Programming - Python Function to Find the Mode in an Array (Most Frequent Number)
- [Teaching Kids Programming - Compute the Number of Sublists by Combination in Math](https://helloacm.com/teaching-kids-programming-compute-the-number-of-sublists-by-combination-in-math/) - Teaching Kids Programming - Compute the Number of Sublists by Combination in Math
- [Teaching Kids Programming - Contiguously Increasing Numbers (Depth First Search and Breadth First Search Algorithm)](https://helloacm.com/teaching-kids-programming-contiguously-increasing-numbers-depth-first-search-breadth-first-search-and-math/) - Teaching Kids Programming - Contiguously Increasing Numbers (Depth First Search, Breadth First Search and Math)
- [Handling Command Line Parameters for PHP Script (Turn Parameters into GET/POST)](https://helloacm.com/handling-command-line-parameters-for-php-script-turn-parameters-into-get-post/) - Handling Command Line Parameters for PHP Script (Turn Parameters into GET/POST)
- [How RNG Software Determines Online Progressive Jackpot Winners?](https://helloacm.com/how-rng-software-determines-online-progressive-jackpot-winners/) - How RNG Software Determines Online Progressive Jackpot Winners?
- [Algorithms to Find Maximum Depth of N-ary Tree (C++)](https://helloacm.com/c-coding-exercise-find-maximum-depth-of-n-ary-tree/) - C++ Coding Exercise - Find Maximum Depth of N-ary Tree. Depth First Search and Breadth First Search
- [Teaching Kids Programming - Recursive Algorithm to Compute the Maximum Depth of the Binary Tree](https://helloacm.com/teaching-kids-programming-recursive-algorithm-to-compute-the-maximum-depth-of-the-binary-tree/) - Recursion to find the maximum depth of a binary tree

## Pages

- [Software Engineering Jobs](https://helloacm.com/software-engineering-jobs/) - Software Engineering Jobs, coding jobs, programming jobs around you

## Forums

- [SEO, Wordpress, Coding for the Web](https://helloacm.com/forums/forum/seo-wordpress-coding-for-the-web/) - SEO, Wordpress, Coding for the Web, Blogging Questions, Adsense, Adwords, Web Hosting, Affiliate Marketing, Trouble Shooting, Blog Monetization, Social Media, Meta
- [SEO, Wordpress, Coding for the Web](https://helloacm.com/forums/forum/seo-wordpress-coding-for-the-web/) - SEO, Wordpress, Coding for the Web, Blogging Questions, Adsense, Adwords, Web Hosting, Affiliate Marketing, Trouble Shooting, Blog Monetization, Social Media, Meta
- [How-Tos and Everything Else *](https://helloacm.com/forums/forum/everything-else/) - Suggestions / Chats / News Tools/Utilities Share Web Development Job Opportunties Basically Everything Else. How-Tos?
- [Programming Languages](https://helloacm.com/forums/forum/programming-languages/) - Programming Languages
- [Shell Scripting & Database](https://helloacm.com/forums/forum/shell-scripting-database/) - Batch, Bash, VBScript/JScript, Python and etc PHP + MySQL
- [Data Structure & Algorithms](https://helloacm.com/forums/forum/data-structure-algorithms/) - Data Structure & Algorithms
- [Data Structure & Algorithms](https://helloacm.com/forums/forum/data-structure-algorithms/) - Data Structure & Algorithms
- [Programming Languages](https://helloacm.com/forums/forum/programming-languages/) - Programming Languages

## Topics

- [Facebook Interview](https://helloacm.com/forums/topic/facebook-interview/) - Hey Folks, I've a interview with Facebook for swe position and I have 3-4 weeks to prepare. what should I do? I'm in the process of solving all questions asked here - https://www.interviewbit.com/facebook-interview-questions/ I'll focus on data structures and algo questions. Any more tips.? Thanks
- [stack](https://helloacm.com/forums/topic/stack/) - The data structure is the way to store data in a structured format. There are several algorithms that used to code in a data structure. I took help from dell printer support for my data structure assignment. For example, if you want to write a program of the stack in data structure then you have
- [Adsense Earning Report Nov/2016](https://helloacm.com/forums/topic/adsense-earning-report-nov2016/) - Total: 154.20 GBP, thanks to the watch-tv-online page. 95.58 GBP - justyy.com 50.72 GBP - helloacm.com 3.26 GBP - weibomiaopai.com 3 GBP - rot47.net
- [Adsense Earning Report October/2016](https://helloacm.com/forums/topic/adsense-earning-report-october2016/) - The earnings for Oct 2016 is 109.35 GBP where they come from: 1. justyy.com - 67.01 GBP 2. helloacm.com - 35.01 GBP 3. steakovercooked.com - 2.53 GBP 4. rot47.net - 2.21 GBP 5. weibomiaopai.com 1.20 GBP 6. isvbscriptdead.com - 0.71 GBP 7. codingforspeed.com - 0.54 GBP We have a new domain - weibomiaopai.com and it
- [Adsense Earning Report Sept/2016](https://helloacm.com/forums/topic/adsense-earning-report-sept2016/) - This is the 3rd month that total earnings of Adsense per month exceeds the minimal payout 60 GBP. Total earning for period 1/Sept/2016 to 30/Sept/2016 is 76.27 GBP. helloacm.com – 47.02 GBP justyy.com – 25.86 GBP rot47.net – 2.84 GBP codingforspeed.com – 0.43 GBP Finger-cross for the next Month. The adsense earnings help me maintain
- [Adsense Earning Report Aug/2016](https://helloacm.com/forums/topic/adsense-earning-report-aug2016/) - The total estimated earings for Aug/2016 (1/Aug/2016 to 31/Aug/2016) is the highest so far: 104.48 GBP. The top 3 sites earning are: justyy.com - 76.79 GBP helloacm.com - 25.87 GBP rot47.net - 1.39 GBP This is mainly due to the fact that Rio Olympic 2016 has brought traffic to my site (watch tv/sports online). Thanks
- [Adsense Earning Report May/2016](https://helloacm.com/forums/topic/adsense-earning-may2016/) - Estimated Earnings 29.87 GBP (1/5/2016 - 31/5/2016) helloacm.com - 18.80 GBP justyy.com - 9.91 GBP steakovercooked.com - 0.80 GBP codingforspeed.com - 0.20 GBP rot47.net - 0.15 GBP
- [Adsense Earning Report June/2016](https://helloacm.com/forums/topic/adsense-earning-report-june2016/) - Estimate Earning is 44.05 GBP, which has increased 47% (14.18 GBP) from previous month (1/6/2016 - 30/6/2016). helloacm.com - 25.16 GBP justyy.com - 16.63 GBP rot47.net - 1.95 GBP steakovercooked.com - 0.19 GBP
- [Adsense Earning Report July/2016](https://helloacm.com/forums/topic/adsense-earning-report-july2016/) - There is a slight decrease for the earnings of Adsense in July 2016 Total = 25.15 GBP helloacm.com - 13.62 GBP justyy.com - 8.22 GBP rot47.net - 2.17 GBP steakovercooked.com - 0.72 GBP codingforspeed.com - 0.38 GBP Top 2 sites still contribute more than 80% of the total income. If a domain has earning at
- [What plugin use in this blog?](https://helloacm.com/forums/topic/what-plugin-use-in-this-blog/) - I am interesting with your footer information http://prntscr.com/a4v4ff Can I know what plugin use to show infromation "Uptime 1374 Days, 880 Posts and 10 Pages, 514 comments" in footer area? thank you.
- [3 ways to contribute](https://helloacm.com/forums/topic/3-ways-to-contribute/) - There are 3 ways to contribute to this blog. Send Posts by Emails ( Oh [AT] SteakOverCooked.com ) Write Stuffs in Forums. Decent Posts will be promoted. Automatically become WP 'Contributor' once you register forum users. The WP Admin Entry is helloacm.com / sex More details: https://helloacm.com/guest-articles/
- [Everything Else *](https://helloacm.com/forums/topic/everything-else/) - Suggestions / Chats / News Tools/Utilities Share Web Development Job opportunities Basically Everything Else.
- [Shell Scripting, Database](https://helloacm.com/forums/topic/shell-scripting-database/) - Shell Scripting, Database
- [Data Structure & Algorithms](https://helloacm.com/forums/topic/data-structure-algorithms/) - Data Structure & Algorithms
- [SEO, WordPress, Coding for the Web](https://helloacm.com/forums/topic/seo-wordpress-coding-for-the-web/) - SEO, WordPress, Coding for the Web

## Replies

- [](https://helloacm.com/forums/reply/157720/) - |Don't buy something simply because of a great price. No matter how much of a steal it is money wise, if it looks bad on you, don't buy it. It will simply be a loss of space and money.
- [](https://helloacm.com/forums/reply/157719/) - |A fabulous handbag can spruce up any outfit, but match it up with other bags you may also need to carry. For example, if you carry a briefcase, coordinate your handbag with your briefcase. You should only ever have a maximum of two bags on you at the same time.
- [](https://helloacm.com/forums/reply/157718/) - }{When you want to look slimmer, avoid stripes which run horizontally. These stripes will give the illusion of widening and this is not the look you want to achieve. Instead, wear a vertical stripe pattern that will make you look tall instead of wide.
- [](https://helloacm.com/forums/reply/157717/) - |Some people think fashion is just about clothing. What they fail to recognize is the importance of hairstyles, which can make or break any look in fashion. This is why it is crucial that you figure out how to properly manage your hair.
- [](https://helloacm.com/forums/reply/6347/) - Practice problem solving on leetcode... You can group questions by the Facebook tags.
- [](https://helloacm.com/forums/reply/6178/) - Data Structure is the essentials of Computer Science, and is the foundation of Algorithms.
- [](https://helloacm.com/forums/reply/6089/) - The data structure is the way to store data in a structured format. There are several algorithms that used to code in a data structure. I took help from the internet for my data structure assignment. For example, if you want to write a program of the stack in data structure then you have to
- [](https://helloacm.com/forums/reply/4797/) - The final payment is 103.73 GBP because there are some invalid clicks and these are removed and balance updated.
- [](https://helloacm.com/forums/reply/4796/) - The final payment is 75.71 after some invalid clicks are detected and removed.
- [](https://helloacm.com/forums/reply/4795/) - The final payment is 105.19 GBP after some invalid clicks are removed.
- [](https://helloacm.com/forums/reply/4081/) - Now, the forum 'Programming Languages' is created. This forum talks about various programming languages.
- [](https://helloacm.com/forums/reply/4059/) - Hello, check this post: https://helloacm.com/how-to-create-a-page-of-archives-summary-for-all-wordpress-postspages-using-php/ You would need a plugin to include PHP code in the pages and you would need to create a page that runs a PHP file.
- [](https://helloacm.com/forums/reply/4058/) - Hi, thank you for your answer. What about the link and the page of https://helloacm.com/archives-of-pagesposts/. Is that plugin or not? Where should I put the PHP code above, footer.php? Because I use schema mythemeshop too. Thank you.
- [](https://helloacm.com/forums/reply/4057/) - Form Index Page is online now at: https://helloacm.com/forums/
- [](https://helloacm.com/forums/reply/4050/)
- [](https://helloacm.com/forums/reply/4049/) - Hello, yes, it is not a plugin, it is a PHP code, more details in this post: https://helloacm.com/how-to-display-blog-statistics-at-the-page-footer/

## Categories

- [uncategorized](https://helloacm.com/category/uncategorized/)
- [python](https://helloacm.com/category/python/)
- [technical](https://helloacm.com/category/technical/)
- [non-technical](https://helloacm.com/category/non-technical/)
- [codeforces](https://helloacm.com/category/codeforces/)
- [math](https://helloacm.com/category/math/)
- [php](https://helloacm.com/category/php/)
- [implementation](https://helloacm.com/category/implementation/)
- [beginner](https://helloacm.com/category/beginner/)
- [mysql](https://helloacm.com/category/mysql/)
- [greedy algorithm](https://helloacm.com/category/greedy/)
- [brute force](https://helloacm.com/category/brute-force/)
- [monte carlo](https://helloacm.com/category/monte-carlo/)
- [data structure](https://helloacm.com/category/data-structure/)
- [github](https://helloacm.com/category/github/)
- [database](https://helloacm.com/category/database/)
- [batch script](https://helloacm.com/category/batch-script/)
- [windows command shell](https://helloacm.com/category/windows-command-shell/)
- [GUI](https://helloacm.com/category/gui/)
- [algorithms](https://helloacm.com/category/algorithms/)
- [sorting](https://helloacm.com/category/sorting/)
- [delphi](https://helloacm.com/category/delphi/)
- [object pascal](https://helloacm.com/category/object-pascal/)
- [assembly language](https://helloacm.com/category/assembly-language/)
- [tools / utilities](https://helloacm.com/category/tools-utilities/)
- [search](https://helloacm.com/category/search/)
- [javascript](https://helloacm.com/category/javascript/)
- [vbscript](https://helloacm.com/category/vbscript/)
- [software design](https://helloacm.com/category/software-design/)
- [c #](https://helloacm.com/category/c/)
- [http](https://helloacm.com/category/http/)
- [dns](https://helloacm.com/category/dns/)
- [multithreading](https://helloacm.com/category/multithreading/)
- [tricks](https://helloacm.com/category/tricks/)
- [c / c++](https://helloacm.com/category/c-c/)
- [linux](https://helloacm.com/category/linux/)
- [SEO](https://helloacm.com/category/seo/)
- [memory](https://helloacm.com/category/memory/)
- [interview questions](https://helloacm.com/category/interview-questions/)
- [compression](https://helloacm.com/category/compression/)
- [ubuntu](https://helloacm.com/category/ubuntu/)
- [windows](https://helloacm.com/category/windows/)
- [documentation](https://helloacm.com/category/documentation/)
- [I/O File](https://helloacm.com/category/io-file/)
- [dropbox](https://helloacm.com/category/dropbox/)
- [cloud computing](https://helloacm.com/category/cloud-computing/)
- [FTP](https://helloacm.com/category/ftp/)
- [probability](https://helloacm.com/category/probability/)
- [recursive](https://helloacm.com/category/recursive/)
- [emulator](https://helloacm.com/category/emulator/)
- [turtle logo](https://helloacm.com/category/turtle-logo/)
- [images drawing](https://helloacm.com/category/images-drawing/)
- [exception handling](https://helloacm.com/category/exception-handling/)
- [programming languages](https://helloacm.com/category/programming-languages/)
- [brainfuck](https://helloacm.com/category/brainfuck/)
- [interpreter / compiler](https://helloacm.com/category/interpreter-compiler/)
- [compiler](https://helloacm.com/category/compiler/)
- [HTML5](https://helloacm.com/category/html5/)
- [CSS](https://helloacm.com/category/css/)
- [adsense](https://helloacm.com/category/adsense/)
- [internet](https://helloacm.com/category/internet/)
- [MSDOS 16-bit](https://helloacm.com/category/msdos-16-bit/)
- [bug fixes](https://helloacm.com/category/bug-fixes/)
- [games](https://helloacm.com/category/games/)
- [string](https://helloacm.com/category/string/)
- [profiler](https://helloacm.com/category/profiler/)
- [DOS](https://helloacm.com/category/dos/)
- [ideas](https://helloacm.com/category/ideas/)
- [encryption](https://helloacm.com/category/encryption/)
- [geometry](https://helloacm.com/category/geometry/)
- [java](https://helloacm.com/category/java/)
- [proof without words](https://helloacm.com/category/proof-without-words/)
- [proof](https://helloacm.com/category/proof/)
- [bit hacks](https://helloacm.com/category/bit-hacks/)
- [graph](https://helloacm.com/category/graph/)
- [network](https://helloacm.com/category/network/)
- [dynamic programming](https://helloacm.com/category/dynamic-programming/)
- [apache server](https://helloacm.com/category/apache-server/)
- [news](https://helloacm.com/category/news/)
- [simulation](https://helloacm.com/category/simulation/)
- [timus](https://helloacm.com/category/timus/)
- [nodejs](https://helloacm.com/category/nodejs/)
- [ajax](https://helloacm.com/category/ajax/)
- [sockets](https://helloacm.com/category/sockets/)
- [tcp/ip](https://helloacm.com/category/tcpip/)
- [client-server](https://helloacm.com/category/client-server/)
- [windows scripting host](https://helloacm.com/category/windows-scripting-host/)
- [graphs](https://helloacm.com/category/graphs/)
- [data types](https://helloacm.com/category/data-types/)
- [optimization](https://helloacm.com/category/optimization/)
- [floating point](https://helloacm.com/category/floating-point/)
- [code](https://helloacm.com/category/code/)
- [64 bit](https://helloacm.com/category/64-bit-2/)
- [Win32 API](https://helloacm.com/category/win32-api/)
- [base64](https://helloacm.com/category/base64/)
- [date/calendar](https://helloacm.com/category/datecalendar/)
- [sql](https://helloacm.com/category/sql-2/)
- [debug](https://helloacm.com/category/debug/)
- [VMProtect](https://helloacm.com/category/vmprotect/)
- [32 bit](https://helloacm.com/category/32-bit/)
- [COM/OLE](https://helloacm.com/category/comole/)
- [smart phones](https://helloacm.com/category/smart-phones/)
- [ipad](https://helloacm.com/category/ipad/)
- [USB](https://helloacm.com/category/usb/)
- [computational theory](https://helloacm.com/category/computational-theory/)
- [malware](https://helloacm.com/category/malware/)
- [code library](https://helloacm.com/category/code-library/)
- [hash](https://helloacm.com/category/hash/)
- [facebook](https://helloacm.com/category/facebook/)
- [guest articles](https://helloacm.com/category/guest-articles/)
- [FAQ](https://helloacm.com/category/faq/)
- [DOSBOX](https://helloacm.com/category/dosbox/)
- [16 bit](https://helloacm.com/category/16-bit-2/)
- [syntax](https://helloacm.com/category/syntax/)
- [Office](https://helloacm.com/category/office/)
- [VBA](https://helloacm.com/category/vba/)
- [excel](https://helloacm.com/category/excel/)
- [6502](https://helloacm.com/category/6502/)
- [Nintendo Entertainment System](https://helloacm.com/category/nintendo-entertainment-system/)
- [console](https://helloacm.com/category/console/)
- [hardware](https://helloacm.com/category/hardware/)
- [macros](https://helloacm.com/category/macros/)
- [8 bit](https://helloacm.com/category/8-bit/)
- [SPOJ online judge](https://helloacm.com/category/spoj-online-judge/)
- [LUA programming language](https://helloacm.com/category/lua-programming-language/)
- [wordpress](https://helloacm.com/category/wordpress/)
- [webhosting](https://helloacm.com/category/webhosting/)
- [leetcode online judge](https://helloacm.com/category/leetcode-online-judge/)
- [famicom](https://helloacm.com/category/famicom/)
- [animation](https://helloacm.com/category/animation/)
- [web programming](https://helloacm.com/category/web-programming/)
- [cryptography](https://helloacm.com/category/cryptography/)
- [Raspberry PI](https://helloacm.com/category/raspberry-pi/)
- [IDE](https://helloacm.com/category/ide/)
- [Processing and ProcessingJS](https://helloacm.com/category/processing-and-processingjs/)
- [review](https://helloacm.com/category/review/)
- [security](https://helloacm.com/category/security/)
- [Virtual Private Server](https://helloacm.com/category/virtual-private-server-2/)
- [BASH Shell](https://helloacm.com/category/bash-shell-2/)
- [Shell Scripts](https://helloacm.com/category/shell-scripts/)
- [case study](https://helloacm.com/category/case-study/)
- [software download](https://helloacm.com/category/software-download/)
- [twitter](https://helloacm.com/category/twitter/)
- [SSL](https://helloacm.com/category/ssl/)
- [matlab](https://helloacm.com/category/matlab/)
- [user experience](https://helloacm.com/category/user-experience/)
- [Haskell Functional Programming](https://helloacm.com/category/haskell-functional-programming/)
- [powershell](https://helloacm.com/category/powershell/)
- [code review](https://helloacm.com/category/code-review/)
- [unit tests](https://helloacm.com/category/unit-tests/)
- [continuous integration (build server)](https://helloacm.com/category/continuous-integration-build-server/)
- [LINQ](https://helloacm.com/category/linq/)
- [Language Integrated Query](https://helloacm.com/category/language-integrated-query/)
- [Visual Studio](https://helloacm.com/category/visual-studio/)
- [HTA](https://helloacm.com/category/hta/)
- [domains](https://helloacm.com/category/domains/)
- [awk](https://helloacm.com/category/awk/)
- [regex](https://helloacm.com/category/regex/)
- [parallel computing](https://helloacm.com/category/parallel-computing/)
- [tablet](https://helloacm.com/category/tablet/)
- [OOP](https://helloacm.com/category/oop/)
- [google api](https://helloacm.com/category/google-api/)
- [QR image](https://helloacm.com/category/qr-image/)
- [shortcut](https://helloacm.com/category/shortcut/)
- [vps](https://helloacm.com/category/vps/)
- [quickhostuk](https://helloacm.com/category/quickhostuk/)
- [crontab](https://helloacm.com/category/crontab/)
- [CI server](https://helloacm.com/category/ci-server/)
- [msbuild.exe](https://helloacm.com/category/msbuild-exe/)
- [.net](https://helloacm.com/category/net/)
- [resharper](https://helloacm.com/category/resharper/)
- [SVN](https://helloacm.com/category/svn/)
- [cloud](https://helloacm.com/category/cloud/)
- [IFTTT](https://helloacm.com/category/ifttt/)
- [management](https://helloacm.com/category/management/)
- [agile development](https://helloacm.com/category/agile-development/)
- [JSON](https://helloacm.com/category/json/)
- [API](https://helloacm.com/category/api/)
- [complexity](https://helloacm.com/category/complexity/)
- [WIFI](https://helloacm.com/category/wifi/)
- [mobile phone](https://helloacm.com/category/mobile-phone/)
- [broadband](https://helloacm.com/category/broadband/)
- [software development](https://helloacm.com/category/software-development/)
- [cloudflare](https://helloacm.com/category/cloudflare/)
- [agile](https://helloacm.com/category/agile/)
- [backup](https://helloacm.com/category/backup/)
- [refactoring](https://helloacm.com/category/refactoring/)
- [cheat sheet](https://helloacm.com/category/cheat-sheet/)
- [performance comparison](https://helloacm.com/category/performance-comparison/)
- [Task Parallel Library](https://helloacm.com/category/task-parallel-library/)
- [x64](https://helloacm.com/category/x64/)
- [freeware](https://helloacm.com/category/freeware/)
- [software](https://helloacm.com/category/software/)
- [Artificial Intelligence](https://helloacm.com/category/artificial-intelligence/)
- [work/jobs](https://helloacm.com/category/workjobs/)
- [email example](https://helloacm.com/category/email-example/)
- [chrome browser](https://helloacm.com/category/chrome-browser/)
- [plugin review](https://helloacm.com/category/plugin-review/)
- [IT news](https://helloacm.com/category/it-news/)
- [HTTPS](https://helloacm.com/category/https/)
- [wordpress plugin](https://helloacm.com/category/wordpress-plugin/)
- [images](https://helloacm.com/category/images/)
- [HTML](https://helloacm.com/category/html/)
- [BIOS](https://helloacm.com/category/bios/)
- [product review](https://helloacm.com/category/product-review/)
- [RAID](https://helloacm.com/category/raid/)
- [GPU](https://helloacm.com/category/gpu/)
- [windows batch](https://helloacm.com/category/windows-batch/)
- [email smtp](https://helloacm.com/category/email-smtp/)
- [keyboard](https://helloacm.com/category/keyboard/)
- [QR images](https://helloacm.com/category/qr-images/)
- [gmail](https://helloacm.com/category/gmail/)
- [software review](https://helloacm.com/category/software-review/)
- [git](https://helloacm.com/category/git/)
- [visual studio online](https://helloacm.com/category/visual-studio-online/)
- [tips](https://helloacm.com/category/tips/)
- [speed](https://helloacm.com/category/speed/)
- [website](https://helloacm.com/category/website/)
- [smart phone](https://helloacm.com/category/smart-phone/)
- [jquery](https://helloacm.com/category/jquery/)
- [browsers](https://helloacm.com/category/browsers/)
- [linux shell](https://helloacm.com/category/linux-shell/)
- [bash script](https://helloacm.com/category/bash-script/)
- [coding exercise](https://helloacm.com/category/coding-exercise/)
- [mobile user friendly](https://helloacm.com/category/mobile-user-friendly/)
- [domain](https://helloacm.com/category/domain/)
- [humor](https://helloacm.com/category/humor/)
- [funny](https://helloacm.com/category/funny/)
- [markdown](https://helloacm.com/category/markdown/)
- [tutorial](https://helloacm.com/category/tutorial/)
- [harddisk](https://helloacm.com/category/harddisk/)
- [jscript](https://helloacm.com/category/jscript/)
- [sitemaps](https://helloacm.com/category/sitemaps/)
- [Image Optimisation](https://helloacm.com/category/image-optimisation/)
- [quickhost](https://helloacm.com/category/quickhost/)
- [CPU](https://helloacm.com/category/cpu/)
- [plugin](https://helloacm.com/category/plugin/)
- [cache](https://helloacm.com/category/cache/)
- [jpeg](https://helloacm.com/category/jpeg/)
- [WoocommerceX](https://helloacm.com/category/woocommercex/)
- [Woocommerce](https://helloacm.com/category/woocommerce/)
- [hacker rank](https://helloacm.com/category/hacker-rank/)
- [online judge](https://helloacm.com/category/online-judge/)
- [machine learning](https://helloacm.com/category/machine-learning/)
- [linear regression](https://helloacm.com/category/linear-regression/)
- [introduction](https://helloacm.com/category/introduction/)
- [DFS](https://helloacm.com/category/dfs/)
- [logistic-regression](https://helloacm.com/category/logistic-regression/)
- [BFS](https://helloacm.com/category/bfs/)
- [Google](https://helloacm.com/category/google/)
- [static code analyser](https://helloacm.com/category/static-code-analyser/)
- [FixInsight](https://helloacm.com/category/fixinsight/)
- [hardware review](https://helloacm.com/category/hardware-review/)
- [mod_pagespeed](https://helloacm.com/category/mod_pagespeed/)
- [knowledgebase](https://helloacm.com/category/knowledgebase/)
- [IP Address](https://helloacm.com/category/ip-address/)
- [site information/summary](https://helloacm.com/category/site-informationsummary/)
- [unit test](https://helloacm.com/category/unit-test/)
- [makefile](https://helloacm.com/category/makefile/)
- [bbPress](https://helloacm.com/category/bbpress/)
- [R programming](https://helloacm.com/category/r-programming/)
- [battery](https://helloacm.com/category/battery/)
- [technology news](https://helloacm.com/category/technology-news/)
- [data backup](https://helloacm.com/category/data-backup/)
- [low level](https://helloacm.com/category/low-level/)
- [Vultr VPS Hosting](https://helloacm.com/category/vultr-vps-hosting/)
- [Subor](https://helloacm.com/category/subor/)
- [proof tests](https://helloacm.com/category/proof-tests/)
- [gcc compiler](https://helloacm.com/category/gcc-compiler/)
- [chrome extension](https://helloacm.com/category/chrome-extension/)
- [puzzle](https://helloacm.com/category/puzzle/)
- [MVC](https://helloacm.com/category/mvc/)
- [OpenMP](https://helloacm.com/category/openmp/)
- [video download tutorial](https://helloacm.com/category/video-download-tutorial/)
- [Linode VPS](https://helloacm.com/category/linode-vps/)
- [speed test](https://helloacm.com/category/speed-test/)
- [AMP (Accelerated Mobile Pages)](https://helloacm.com/category/amp-accelerated-mobile-pages/)
- [Ransomware/Virus](https://helloacm.com/category/ransomwarevirus/)
- [amazon](https://helloacm.com/category/amazon/)
- [gadget for programmer](https://helloacm.com/category/gadget-for-programmer/)
- [Microsoft](https://helloacm.com/category/microsoft/)
- [SteemIt](https://helloacm.com/category/steemit/)
- [interviews](https://helloacm.com/category/interviews/)
- [blockchain](https://helloacm.com/category/blockchain/)
- [latex](https://helloacm.com/category/latex/)
- [LOGO Turtle Programming](https://helloacm.com/category/logo-turtle-programming/)
- [logic tests](https://helloacm.com/category/logic-tests/)
- [mssql](https://helloacm.com/category/mssql/)
- [viglink](https://helloacm.com/category/viglink/)
- [project management](https://helloacm.com/category/project-management/)
- [fractal graphs](https://helloacm.com/category/fractal-graphs/)
- [Cryptocurrency](https://helloacm.com/category/cryptocurrency/)
- [Coinbase API](https://helloacm.com/category/coinbase-api/)
- [discord](https://helloacm.com/category/discord/)
- [AWK programming](https://helloacm.com/category/awk-programming/)
- [zip recruiter](https://helloacm.com/category/zip-recruiter/)
- [job searching](https://helloacm.com/category/job-searching/)
- [event](https://helloacm.com/category/event/)
- [blackmail email](https://helloacm.com/category/blackmail-email/)
- [learn to code](https://helloacm.com/category/learn-to-code/)
- [VPN](https://helloacm.com/category/vpn/)
- [vintage computing](https://helloacm.com/category/vintage-computing/)
- [magik programming](https://helloacm.com/category/magik-programming/)
- [fizzbuzz](https://helloacm.com/category/fizzbuzz/)
- [digital marketing](https://helloacm.com/category/digital-marketing/)
- [business](https://helloacm.com/category/business/)
- [SSH](https://helloacm.com/category/ssh/)
- [stocks](https://helloacm.com/category/stocks/)
- [binary search](https://helloacm.com/category/binary-search/)
- [design questions](https://helloacm.com/category/design-questions/)
- [design pattern](https://helloacm.com/category/design-pattern/)
- [eslint](https://helloacm.com/category/eslint/)
- [microbit](https://helloacm.com/category/microbit/)
- [asynchronous programming](https://helloacm.com/category/asynchronous-programming/)
- [Online Casinos](https://helloacm.com/category/online-casinos/)
- [Kubernetes](https://helloacm.com/category/kubernetes/)
- [Wireless Networks](https://helloacm.com/category/wireless-networks/)
- [Combinatoric Mathematics](https://helloacm.com/category/combinatoric-mathematics/)
- [Ecommerce](https://helloacm.com/category/ecommerce/)
- [line sweep algorithm](https://helloacm.com/category/line-sweep-algorithm/)
- [marketing strategies](https://helloacm.com/category/marketing-strategies/)
- [project euler](https://helloacm.com/category/project-euler/)
- [Instagram](https://helloacm.com/category/instagram/)
- [Software Testing](https://helloacm.com/category/software-testing/)
- [Internet of Things](https://helloacm.com/category/internet-of-things/)
- [Load Balancing](https://helloacm.com/category/load-balancing/)
- [RxJava](https://helloacm.com/category/rxjava/)
- [book review](https://helloacm.com/category/book-review/)
- [Career Development](https://helloacm.com/category/career-development/)
- [big O](https://helloacm.com/category/big-o/)
- [docker](https://helloacm.com/category/docker/)
- [Google Kickstart](https://helloacm.com/category/google-kickstart/)
- [code template](https://helloacm.com/category/code-template/)
- [Mac OS](https://helloacm.com/category/mac-os/)
- [teaching kids programming](https://helloacm.com/category/teaching-kids-programming/)
- [youtube video](https://helloacm.com/category/youtube-video/)
- [iOS](https://helloacm.com/category/ios/)
- [Android](https://helloacm.com/category/android/)
- [ASCII](https://helloacm.com/category/ascii/)
- [Amazon Web Services](https://helloacm.com/category/amazon-web-services/)
- [Bitcoins](https://helloacm.com/category/bitcoins/)
- [Robot](https://helloacm.com/category/robot/)
- [Go Programming](https://helloacm.com/category/go-programming/)
- [Tron](https://helloacm.com/category/tron/)
- [Monte Carlo Simulation Algorithm](https://helloacm.com/category/monte-carlo-simulation-algorithm/)
- [Monte Carlo Simulation](https://helloacm.com/category/monte-carlo-simulation/)
- [concept](https://helloacm.com/category/concept/)
- [video converter](https://helloacm.com/category/video-converter/)
- [Divide and Conquer](https://helloacm.com/category/divide-and-conquer/)
- [Minimum Spanning Tree](https://helloacm.com/category/minimum-spanning-tree/)
- [Passive Income](https://helloacm.com/category/passive-income/)
- [Game Theory](https://helloacm.com/category/game-theory/)
- [Rubik Cubes](https://helloacm.com/category/rubik-cubes/)
- [Two Pointer](https://helloacm.com/category/algorithms/two-pointer/)
- [Sliding Window](https://helloacm.com/category/algorithms/sliding-window/)
- [Graph Algorithm](https://helloacm.com/category/algorithms/graph-algorithm/)
- [Depth First Search](https://helloacm.com/category/algorithms/depth-first-search/)
- [Recursion](https://helloacm.com/category/algorithms/recursion/)
- [Binary Search Algorithm](https://helloacm.com/category/algorithms/binary-search-algorithm/)
- [Breadth First Search](https://helloacm.com/category/algorithms/breadth-first-search/)
- [Union Find](https://helloacm.com/category/algorithms/union-find/)
- [Disjoint Set](https://helloacm.com/category/data-structure/disjoint-set/)
- [Dynamic Programming](https://helloacm.com/category/algorithms/dynamic-programming-algorithms-2/)
- [Microsoft Azure](https://helloacm.com/category/cloud/microsoft-azure/)
- [Floyd Warshal](https://helloacm.com/category/algorithms/floyd-warshal/)
- [Memoization](https://helloacm.com/category/algorithms/memoization/)
- [Game Theory](https://helloacm.com/category/algorithms/game-theory-algorithms/)
- [Tron Blockchain](https://helloacm.com/category/blockchain/tron-blockchain/)
- [Smart Contract](https://helloacm.com/category/blockchain/smart-contract/)
- [Cryptocurrency](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/)
- [Dijkstra Shortest Path](https://helloacm.com/category/algorithms/dijkstra-shortest-path/)
- [Uniform Cost Search](https://helloacm.com/category/algorithms/uniform-cost-search/)
- [Iterative Deepening Search](https://helloacm.com/category/algorithms/iterative-deepening-search/)
- [Hash Map / Hash Set](https://helloacm.com/category/data-structure/hash-map-hash-set/)
- [Greedy Algorithm](https://helloacm.com/category/algorithms/greedy-algorithm/)
- [CloudFlare](https://helloacm.com/category/cloud/cloudflare-cloud/)
- [Serverless](https://helloacm.com/category/cloud/serverless/)
- [Permutation](https://helloacm.com/category/algorithms/permutation/)
- [Combination](https://helloacm.com/category/algorithms/combination/)
- [Binary Tree](https://helloacm.com/category/data-structure/binary-tree/)
- [XML](https://helloacm.com/category/xml/)
- [Brute Force Algorithm](https://helloacm.com/category/algorithms/brute-force-algorithm/)
- [Bit Masking](https://helloacm.com/category/algorithms/bit-masking/)
- [High Frequency Trading (HFT)](https://helloacm.com/category/high-frequency-trading-hft/)
- [DevOps](https://helloacm.com/category/devops/)
- [Simulation](https://helloacm.com/category/algorithms/simulation-algorithms-2/)
- [Triangular Arbitrage](https://helloacm.com/category/high-frequency-trading-hft/triangular-arbitrage/)
- [Buy Low](https://helloacm.com/category/high-frequency-trading-hft/buy-low/)
- [Sell High Strategy](https://helloacm.com/category/high-frequency-trading-hft/sell-high-strategy/)
- [ChatGPT (OpenAI)](https://helloacm.com/category/artificial-intelligence/chatgpt-openai/)
- [Prime Numbers](https://helloacm.com/category/math/prime-numbers/)
- [Linear Search](https://helloacm.com/category/algorithms/linear-search/)
- [Heap (Priority Queue)](https://helloacm.com/category/data-structure/heap-priority-queue/)
- [Address Sanitizer](https://helloacm.com/category/address-sanitizer/)
- [Geometry](https://helloacm.com/category/math/geometry-math/)
- [Notion AI](https://helloacm.com/category/artificial-intelligence/notion-ai/)
- [Quantum Computing](https://helloacm.com/category/quantum-computing/)
- [ezoic](https://helloacm.com/category/ezoic/)
- [Windows Subsystem for Linux](https://helloacm.com/category/linux/windows-subsystem-for-linux/)
- [AIGC](https://helloacm.com/category/artificial-intelligence/aigc/)
- [Alpha Beta Pruning](https://helloacm.com/category/algorithms/alpha-beta-pruning/)
- [Sorting](https://helloacm.com/category/algorithms/sorting-algorithms-2/)
- [adwords](https://helloacm.com/category/adwords/)
- [Stack](https://helloacm.com/category/data-structure/stack/)
- [STEEM](https://helloacm.com/category/blockchain/steem/)
- [Set](https://helloacm.com/category/data-structure/set/)
- [Rust](https://helloacm.com/category/programming-languages/rust/)
- [System Design](https://helloacm.com/category/system-design/)
- [Venn Diagram](https://helloacm.com/category/math/venn-diagram/)
- [USDT](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/usdt/)
- [Ethereum (ETH)](https://helloacm.com/category/blockchain/ethereum-eth/)
- [Python](https://helloacm.com/category/programming-languages/python-programming-languages/)
- [Back Tracking](https://helloacm.com/category/algorithms/back-tracking/)
- [Token](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/token/)
- [BTC](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/btc/)
- [TRX](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/trx/)
- [Probability](https://helloacm.com/category/math/probability-math/)
- [Ledger Wallet](https://helloacm.com/category/blockchain/ledger-wallet/)
- [WirexApps](https://helloacm.com/category/blockchain/wirexapps/)
- [Computer Science](https://helloacm.com/category/computer-science/)
- [Random](https://helloacm.com/category/algorithms/random/)
- [C/C++](https://helloacm.com/category/programming-languages/c-c-programming-languages/)
- [Youtube](https://helloacm.com/category/google/youtube/)
- [YAML](https://helloacm.com/category/yaml/)
- [Battery](https://helloacm.com/category/hardware/battery-hardware/)
- [Laptop](https://helloacm.com/category/hardware/laptop/)
- [Hard Drives](https://helloacm.com/category/hardware/hard-drives/)
- [Web3](https://helloacm.com/category/blockchain/web3/)
- [Consensus Algorithm](https://helloacm.com/category/blockchain/consensus-algorithm/)
- [dApps (Distributed Apps)](https://helloacm.com/category/blockchain/dapps-distributed-apps/)
- [Hardware Acceleration](https://helloacm.com/category/hardware/hardware-acceleration/)
- [C# (CSharp)](https://helloacm.com/category/programming-languages/c-csharp/)
- [BitShares (BTS)](https://helloacm.com/category/blockchain/bitshares-bts/)
- [PHP](https://helloacm.com/category/programming-languages/php-programming-languages/)
- [BTS](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/bts/)
- [Grid Computing](https://helloacm.com/category/grid-computing/)
- [Technology](https://helloacm.com/category/technology/)
- [Distributed Computing](https://helloacm.com/category/distributed-computing/)
- [Amazon](https://helloacm.com/category/cloud/amazon-cloud/)
- [RESTful API](https://helloacm.com/category/restful-api/)
- [Crypto Exchanges](https://helloacm.com/category/blockchain/crypto-exchanges/)
- [Crypto.com](https://helloacm.com/category/blockchain/crypto-exchanges/crypto-com/)
- [Wirex](https://helloacm.com/category/blockchain/crypto-exchanges/wirex/)
- [Algorithm Design](https://helloacm.com/category/algorithms/algorithm-design/)
- [Prompt Engineering](https://helloacm.com/category/artificial-intelligence/prompt-engineering/)
- [Bits and Binary](https://helloacm.com/category/math/bits-and-binary/)
- [FPGA](https://helloacm.com/category/hardware/fpga/)
- [Queue / Double-end Queue](https://helloacm.com/category/data-structure/queue-double-end-queue/)
- [List / Array](https://helloacm.com/category/data-structure/list-array/)
- [Factorization](https://helloacm.com/category/math/factorization/)
- [Engineering](https://helloacm.com/category/engineering/)
- [Software Engineering](https://helloacm.com/category/engineering/software-engineering/)
- [Line Sweep](https://helloacm.com/category/algorithms/line-sweep/)
- [Reverse Engineering](https://helloacm.com/category/reverse-engineering/)
- [Node.Js](https://helloacm.com/category/programming-languages/node-js/)
- [Ubuntu](https://helloacm.com/category/linux/ubuntu-linux/)
- [BASH](https://helloacm.com/category/programming-languages/bash/)
- [Solidity](https://helloacm.com/category/programming-languages/solidity/)
- [Physics](https://helloacm.com/category/physics/)
- [SQL](https://helloacm.com/category/programming-languages/sql/)
- [Knapsack Problems](https://helloacm.com/category/math/knapsack-problems/)
- [Bard/Gemini (Google/Alphabeta)](https://helloacm.com/category/artificial-intelligence/bard-gemini-google-alphabeta/)
- [Statistics](https://helloacm.com/category/math/statistics/)
- [Matrix](https://helloacm.com/category/math/matrix/)
- [Linked List](https://helloacm.com/category/data-structure/linked-list/)
- [Java](https://helloacm.com/category/programming-languages/java-programming-languages/)
- [Solana/SOL](https://helloacm.com/category/blockchain/solana-sol/)
- [VBScript](https://helloacm.com/category/programming-languages/vbscript-programming-languages/)
- [Docker](https://helloacm.com/category/cloud-computing/docker-cloud-computing/)
- [Go](https://helloacm.com/category/programming-languages/go/)
- [Redis Caching](https://helloacm.com/category/database/redis-caching/)
- [Decision Tree](https://helloacm.com/category/algorithms/decision-tree/)
- [Process Elimination](https://helloacm.com/category/algorithms/process-elimination/)
- [HTX / Huobi](https://helloacm.com/category/blockchain/crypto-exchanges/htx-huobi/)
- [DeFi](https://helloacm.com/category/blockchain/defi/)
- [AWK](https://helloacm.com/category/programming-languages/awk-programming-languages/)
- [Hashing](https://helloacm.com/category/algorithms/hashing/)
- [Simply Explained](https://helloacm.com/category/knowledgebase/simply-explained/)
- [MatLab](https://helloacm.com/category/programming-languages/matlab-programming-languages/)
- [Vector](https://helloacm.com/category/math/vector/)
- [Poloniex](https://helloacm.com/category/blockchain/crypto-exchanges/poloniex/)
- [Grok (x.ai)](https://helloacm.com/category/artificial-intelligence/grok-x-ai/)
- [USDC](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/usdc/)
- [MySQL](https://helloacm.com/category/database/mysql-database-2/)
- [Adsense](https://helloacm.com/category/google/adsense-google/)
- [Sui](https://helloacm.com/category/blockchain/sui/)
- [NFT](https://helloacm.com/category/blockchain/nft/)
- [Scam](https://helloacm.com/category/scam/)
- [DogeCoin](https://helloacm.com/category/blockchain/cryptocurrency-blockchain/dogecoin/)
- [FEMO (Fear of Missing Out)](https://helloacm.com/category/femo-fear-of-missing-out/)
- [Dedicated Servers](https://helloacm.com/category/cloud/dedicated-servers/)
- [Virtual Private Server (VPS)](https://helloacm.com/category/cloud/virtual-private-server-vps/)
- [DeepSeek](https://helloacm.com/category/artificial-intelligence/deepseek/)
- [gdb](https://helloacm.com/category/debug/gdb/)
- [lldb](https://helloacm.com/category/debug/lldb/)
- [Segment Tree](https://helloacm.com/category/data-structure/binary-tree/segment-tree/)
- [Prefix Sum](https://helloacm.com/category/algorithms/prefix-sum/)
- [SQRT Decomposition](https://helloacm.com/category/algorithms/sqrt-decomposition/)
- [Vibe Coding](https://helloacm.com/category/software-development/vibe-coding/)
- [ROS (Robot Operating System)](https://helloacm.com/category/ros-robot-operating-system/)
- [AGI: Artificial General Intelligence](https://helloacm.com/category/artificial-intelligence/agi-artificial-general-intelligence/)
- [Greatest Common Divisor](https://helloacm.com/category/math/greatest-common-divisor/)
- [Web Sockets](https://helloacm.com/category/web-sockets/)
- [Q Learning](https://helloacm.com/category/machine-learning/q-learning/)
- [CPU](https://helloacm.com/category/hardware/cpu-hardware/)
- [Nvidia](https://helloacm.com/category/nvidia/)
- [Image to Image](https://helloacm.com/category/artificial-intelligence/image-to-image/)
- [Prompt](https://helloacm.com/category/artificial-intelligence/agi-artificial-general-intelligence/prompt/)
- [Competitive Programming](https://helloacm.com/category/competitive-programming/)
- [Powershell](https://helloacm.com/category/programming-languages/powershell-programming-languages/)
- [System Administrator](https://helloacm.com/category/system-administrator/)
- [Combinatorial Mathematics](https://helloacm.com/category/math/combinatorial-mathematics/)

## Tags

- [programming language](https://helloacm.com/tag/programming-language/)
- [acm](https://helloacm.com/tag/acm/)
- [online judges](https://helloacm.com/tag/online-judges/)
- [COM](https://helloacm.com/tag/com/)
- [algorithm](https://helloacm.com/tag/algorithm/)
- [tutorial](https://helloacm.com/tag/tutorial/)
- [data structures](https://helloacm.com/tag/data-structures/)
- [shell](https://helloacm.com/tag/shell/)
- [script](https://helloacm.com/tag/script/)
- [directory](https://helloacm.com/tag/directory/)
- [search files](https://helloacm.com/tag/search-files/)
- [batch](https://helloacm.com/tag/batch/)
- [game](https://helloacm.com/tag/game/)
- [binary search](https://helloacm.com/tag/binary-search/)
- [performance comparison](https://helloacm.com/tag/performance-comparison/)
- [inline assembly](https://helloacm.com/tag/inline-assembly/)
- [xml](https://helloacm.com/tag/xml/)
- [simulated annealing](https://helloacm.com/tag/simulated-annealing/)
- [files](https://helloacm.com/tag/files/)
- [sed](https://helloacm.com/tag/sed/)
- [.net](https://helloacm.com/tag/net/)
- [gd library](https://helloacm.com/tag/gd-library/)
- [iterative deepening](https://helloacm.com/tag/iterative-deepening/)
- [number theory](https://helloacm.com/tag/number-theory/)
- [newton](https://helloacm.com/tag/newton/)
- [multiprocessing](https://helloacm.com/tag/multiprocessing/)
- [process](https://helloacm.com/tag/process/)
- [fork](https://helloacm.com/tag/fork/)
- [windows script host](https://helloacm.com/tag/windows-script-host/)
- [jscript](https://helloacm.com/tag/jscript/)
- [Array](https://helloacm.com/tag/array/)
- [C#](https://helloacm.com/tag/c-2/)
- [search engine](https://helloacm.com/tag/search-engine/)
- [executable](https://helloacm.com/tag/executable/)
- [Win32](https://helloacm.com/tag/win32/)
- [runlength](https://helloacm.com/tag/runlength/)
- [WinRAR](https://helloacm.com/tag/winrar/)
- [fun/tools](https://helloacm.com/tag/funtools/)
- [ls](https://helloacm.com/tag/ls/)
- [HTTP](https://helloacm.com/tag/http-2/)
- [online storage](https://helloacm.com/tag/online-storage/)
- [numbers](https://helloacm.com/tag/numbers/)
- [images](https://helloacm.com/tag/images/)
- [interpreter](https://helloacm.com/tag/interpreter/)
- [logo programming](https://helloacm.com/tag/logo-programming/)
- [hello world](https://helloacm.com/tag/hello-world/)
- [HTML](https://helloacm.com/tag/html/)
- [website](https://helloacm.com/tag/website/)
- [file caching](https://helloacm.com/tag/file-caching/)
- [performance speedup](https://helloacm.com/tag/performance-speedup/)
- [improvement](https://helloacm.com/tag/improvement/)
- [thread](https://helloacm.com/tag/thread/)
- [SQL](https://helloacm.com/tag/sql/)
- [bots](https://helloacm.com/tag/bots/)
- [search engines](https://helloacm.com/tag/search-engines/)
- [mssql](https://helloacm.com/tag/mssql/)
- [string algorithm](https://helloacm.com/tag/string-algorithm/)
- [16-bit](https://helloacm.com/tag/16-bit/)
- [iterative](https://helloacm.com/tag/iterative/)
- [greedy](https://helloacm.com/tag/greedy-2/)
- [performance](https://helloacm.com/tag/performance/)
- [MS-DOS](https://helloacm.com/tag/ms-dos/)
- [label](https://helloacm.com/tag/label/)
- [functions](https://helloacm.com/tag/functions/)
- [ASCII](https://helloacm.com/tag/ascii/)
- [string rotation](https://helloacm.com/tag/string-rotation/)
- [rot13](https://helloacm.com/tag/rot13/)
- [rot5](https://helloacm.com/tag/rot5/)
- [rot47](https://helloacm.com/tag/rot47/)
- [rot18](https://helloacm.com/tag/rot18/)
- [obfuscation](https://helloacm.com/tag/obfuscation/)
- [pipe](https://helloacm.com/tag/pipe/)
- [warnings](https://helloacm.com/tag/warnings/)
- [compiler directives](https://helloacm.com/tag/compiler-directives/)
- [integration](https://helloacm.com/tag/integration/)
- [sin & cos](https://helloacm.com/tag/sin-cos/)
- [computation](https://helloacm.com/tag/computation/)
- [formula](https://helloacm.com/tag/formula/)
- [fun](https://helloacm.com/tag/fun/)
- [equations](https://helloacm.com/tag/equations/)
- [console application](https://helloacm.com/tag/console-application/)
- [knapsack problem](https://helloacm.com/tag/knapsack-problem/)
- [recursion](https://helloacm.com/tag/recursion/)
- [combination](https://helloacm.com/tag/combination/)
- [pascal](https://helloacm.com/tag/pascal/)
- [size of](https://helloacm.com/tag/size-of/)
- [storage](https://helloacm.com/tag/storage/)
- [long arithmetic](https://helloacm.com/tag/long-arithmetic/)
- [gcd](https://helloacm.com/tag/gcd/)
- [divide and conquer](https://helloacm.com/tag/divide-and-conquer/)
- [rewrite rules](https://helloacm.com/tag/rewrite-rules/)
- [URL rewrite](https://helloacm.com/tag/url-rewrite/)
- [bruteforce](https://helloacm.com/tag/bruteforce/)
- [stdin](https://helloacm.com/tag/stdin/)
- [eof](https://helloacm.com/tag/eof/)
- [image](https://helloacm.com/tag/image/)
- [count](https://helloacm.com/tag/count/)
- [beginner's mistakes](https://helloacm.com/tag/beginners-mistakes/)
- [bfs](https://helloacm.com/tag/bfs/)
- [breadth first search](https://helloacm.com/tag/breadth-first-search/)
- [dfs](https://helloacm.com/tag/dfs/)
- [nodejs.org](https://helloacm.com/tag/nodejs-org/)
- [web servers](https://helloacm.com/tag/web-servers/)
- [FPU](https://helloacm.com/tag/fpu/)
- [triangle area](https://helloacm.com/tag/triangle-area/)
- [registers](https://helloacm.com/tag/registers/)
- [asynchronous](https://helloacm.com/tag/asynchronous/)
- [synchronous](https://helloacm.com/tag/synchronous/)
- [xmlhttprequest](https://helloacm.com/tag/xmlhttprequest/)
- [activexobject](https://helloacm.com/tag/activexobject/)
- [window scripting host](https://helloacm.com/tag/window-scripting-host/)
- [key pair](https://helloacm.com/tag/key-pair/)
- [curly braces](https://helloacm.com/tag/curly-braces/)
- [programming](https://helloacm.com/tag/programming/)
- [TCP/IP](https://helloacm.com/tag/tcpip-2/)
- [Client/Server](https://helloacm.com/tag/clientserver/)
- [non-blocking](https://helloacm.com/tag/non-blocking/)
- [I/O](https://helloacm.com/tag/io/)
- [data reading](https://helloacm.com/tag/data-reading/)
- [event-driven model](https://helloacm.com/tag/event-driven-model/)
- [node.js](https://helloacm.com/tag/node-js/)
- [wsh](https://helloacm.com/tag/wsh/)
- [wscript.shell](https://helloacm.com/tag/wscript-shell/)
- [obj.popup](https://helloacm.com/tag/obj-popup/)
- [COM object](https://helloacm.com/tag/com-object/)
- [new ActiveXObject](https://helloacm.com/tag/new-activexobject/)
- [wscript.exe](https://helloacm.com/tag/wscript-exe/)
- [cscript.exe](https://helloacm.com/tag/cscript-exe/)
- [syswow64](https://helloacm.com/tag/syswow64/)
- [window script host](https://helloacm.com/tag/window-script-host/)
- [excel.application](https://helloacm.com/tag/excel-application/)
- [automation object](https://helloacm.com/tag/automation-object/)
- [local scopes](https://helloacm.com/tag/local-scopes/)
- [variables](https://helloacm.com/tag/variables/)
- [folder](https://helloacm.com/tag/folder/)
- [window script hosting](https://helloacm.com/tag/window-script-hosting/)
- [double direction link](https://helloacm.com/tag/double-direction-link/)
- [counting](https://helloacm.com/tag/counting/)
- [ackermann](https://helloacm.com/tag/ackermann/)
- [integers](https://helloacm.com/tag/integers/)
- [exponential](https://helloacm.com/tag/exponential/)
- [C/C++](https://helloacm.com/tag/cc/)
- [free pascal](https://helloacm.com/tag/free-pascal/)
- [online judge](https://helloacm.com/tag/online-judge/)
- [throws exception](https://helloacm.com/tag/throws-exception/)
- [try catch finally](https://helloacm.com/tag/try-catch-finally/)
- [disjoint sets](https://helloacm.com/tag/disjoint-sets/)
- [Scripting.FileSystemObject](https://helloacm.com/tag/scripting-filesystemobject/)
- [math constant](https://helloacm.com/tag/math-constant/)
- [e](https://helloacm.com/tag/e/)
- [series](https://helloacm.com/tag/series/)
- [number](https://helloacm.com/tag/number/)
- [natural number](https://helloacm.com/tag/natural-number/)
- [iteration](https://helloacm.com/tag/iteration/)
- [infinity](https://helloacm.com/tag/infinity/)
- [delphi 2007](https://helloacm.com/tag/delphi-2007/)
- [delphi xe3](https://helloacm.com/tag/delphi-xe3/)
- [stackoverflow](https://helloacm.com/tag/stackoverflow/)
- [optimizer](https://helloacm.com/tag/optimizer/)
- [native code](https://helloacm.com/tag/native-code/)
- [32bit](https://helloacm.com/tag/32bit/)
- [64bit](https://helloacm.com/tag/64bit/)
- [unicode](https://helloacm.com/tag/unicode/)
- [migration issues](https://helloacm.com/tag/migration-issues/)
- [inline](https://helloacm.com/tag/inline/)
- [code optimization](https://helloacm.com/tag/code-optimization/)
- [grep](https://helloacm.com/tag/grep/)
- [wc](https://helloacm.com/tag/wc/)
- [COM DLL](https://helloacm.com/tag/com-dll/)
- [type library](https://helloacm.com/tag/type-library/)
- [APIs](https://helloacm.com/tag/apis/)
- [xe3](https://helloacm.com/tag/xe3/)
- [sse](https://helloacm.com/tag/sse/)
- [sse2](https://helloacm.com/tag/sse2/)
- [64-bit](https://helloacm.com/tag/64-bit/)
- [floating point optimization](https://helloacm.com/tag/floating-point-optimization/)
- [assembly](https://helloacm.com/tag/assembly/)
- [code generation](https://helloacm.com/tag/code-generation/)
- [access violation](https://helloacm.com/tag/access-violation/)
- [pointer](https://helloacm.com/tag/pointer/)
- [64-bit/32-bit](https://helloacm.com/tag/64-bit32-bit/)
- [truncated pointer](https://helloacm.com/tag/truncated-pointer/)
- [nativeuint](https://helloacm.com/tag/nativeuint/)
- [fast log 10](https://helloacm.com/tag/fast-log-10/)
- [coding](https://helloacm.com/tag/coding/)
- [word.application](https://helloacm.com/tag/word-application/)
- [$7FFFFFFF](https://helloacm.com/tag/7fffffff/)
- [string copy](https://helloacm.com/tag/string-copy/)
- [32/64 bit](https://helloacm.com/tag/3264-bit/)
- [striming simd extensions](https://helloacm.com/tag/striming-simd-extensions/)
- [64/32bit](https://helloacm.com/tag/6432bit/)
- [mba16byte](https://helloacm.com/tag/mba16byte/)
- [16-byte alignment](https://helloacm.com/tag/16-byte-alignment/)
- [stack frames](https://helloacm.com/tag/stack-frames/)
- [heap](https://helloacm.com/tag/heap/)
- [fibonacci](https://helloacm.com/tag/fibonacci/)
- [binary files](https://helloacm.com/tag/binary-files/)
- [base 64 encode](https://helloacm.com/tag/base-64-encode/)
- [embed](https://helloacm.com/tag/embed/)
- [hta](https://helloacm.com/tag/hta/)
- [simple sort](https://helloacm.com/tag/simple-sort/)
- [bubble sort](https://helloacm.com/tag/bubble-sort/)
- [text-to-speech](https://helloacm.com/tag/text-to-speech/)
- [real time bidding](https://helloacm.com/tag/real-time-bidding/)
- [date](https://helloacm.com/tag/date/)
- [timestamp](https://helloacm.com/tag/timestamp/)
- [faster math](https://helloacm.com/tag/faster-math/)
- [windows 8](https://helloacm.com/tag/windows-8/)
- [bugs](https://helloacm.com/tag/bugs/)
- [unspecified error](https://helloacm.com/tag/unspecified-error/)
- [wordpress site](https://helloacm.com/tag/wordpress-site/)
- [usage optimization](https://helloacm.com/tag/usage-optimization/)
- [shrink](https://helloacm.com/tag/shrink/)
- [optimize table](https://helloacm.com/tag/optimize-table/)
- [google adsense](https://helloacm.com/tag/google-adsense/)
- [advs](https://helloacm.com/tag/advs/)
- [windows batch](https://helloacm.com/tag/windows-batch/)
- [matrix](https://helloacm.com/tag/matrix/)
- [script control](https://helloacm.com/tag/script-control/)
- [.NET 4.0](https://helloacm.com/tag/net-4-0/)
- [software licensing](https://helloacm.com/tag/software-licensing/)
- [software protection](https://helloacm.com/tag/software-protection/)
- [blacklist](https://helloacm.com/tag/blacklist/)
- [VMProtectGetCurrentHWID](https://helloacm.com/tag/vmprotectgetcurrenthwid/)
- [win32com](https://helloacm.com/tag/win32com/)
- [win32ole](https://helloacm.com/tag/win32ole/)
- [usb](https://helloacm.com/tag/usb-2/)
- [on the go](https://helloacm.com/tag/on-the-go/)
- [blue tooth](https://helloacm.com/tag/blue-tooth/)
- [keyboard and mouse](https://helloacm.com/tag/keyboard-and-mouse/)
- [android](https://helloacm.com/tag/android/)
- [halting problem](https://helloacm.com/tag/halting-problem/)
- [tuning machine](https://helloacm.com/tag/tuning-machine/)
- [shell.application](https://helloacm.com/tag/shell-application/)
- [filesystemobject](https://helloacm.com/tag/filesystemobject/)
- [wscript.exe/cscript.exe](https://helloacm.com/tag/wscript-execscript-exe/)
- [regsvr32](https://helloacm.com/tag/regsvr32/)
- [virus](https://helloacm.com/tag/virus/)
- [trim](https://helloacm.com/tag/trim/)
- [vbtab](https://helloacm.com/tag/vbtab/)
- [vbcrlf](https://helloacm.com/tag/vbcrlf/)
- [exit for](https://helloacm.com/tag/exit-for/)
- [break loop](https://helloacm.com/tag/break-loop/)
- [O(n)](https://helloacm.com/tag/on/)
- [swap](https://helloacm.com/tag/swap/)
- [permutation](https://helloacm.com/tag/permutation/)
- [CRC32](https://helloacm.com/tag/crc32/)
- [cryptographic](https://helloacm.com/tag/cryptographic/)
- [API](https://helloacm.com/tag/api/)
- [table](https://helloacm.com/tag/table/)
- [FB like button](https://helloacm.com/tag/fb-like-button/)
- [JSON](https://helloacm.com/tag/json/)
- [dos](https://helloacm.com/tag/dos-2/)
- [dosbox](https://helloacm.com/tag/dosbox-2/)
- [.COM binary assembly](https://helloacm.com/tag/com-binary-assembly/)
- [int 21h](https://helloacm.com/tag/int-21h/)
- [int 20h](https://helloacm.com/tag/int-20h/)
- [program segment prefix](https://helloacm.com/tag/program-segment-prefix/)
- [msdos](https://helloacm.com/tag/msdos/)
- [assembler](https://helloacm.com/tag/assembler/)
- [.COM binaries](https://helloacm.com/tag/com-binaries/)
- [loop](https://helloacm.com/tag/loop/)
- [masm32](https://helloacm.com/tag/masm32/)
- [win32 API](https://helloacm.com/tag/win32-api-2/)
- [interrupts](https://helloacm.com/tag/interrupts/)
- [getch](https://helloacm.com/tag/getch/)
- [getkey](https://helloacm.com/tag/getkey/)
- [16bit](https://helloacm.com/tag/16bit/)
- [.COM assembly](https://helloacm.com/tag/com-assembly/)
- [movzx](https://helloacm.com/tag/movzx/)
- [code injection](https://helloacm.com/tag/code-injection/)
- [python 2.x and 3.x](https://helloacm.com/tag/python-2-x-and-3-x/)
- [xrange](https://helloacm.com/tag/xrange/)
- [range](https://helloacm.com/tag/range/)
- [list](https://helloacm.com/tag/list/)
- [generator](https://helloacm.com/tag/generator/)
- [import sys](https://helloacm.com/tag/import-sys/)
- [interview](https://helloacm.com/tag/interview/)
- [atoi](https://helloacm.com/tag/atoi/)
- [string to integer](https://helloacm.com/tag/string-to-integer/)
- [programming exercises](https://helloacm.com/tag/programming-exercises/)
- [arithmetic](https://helloacm.com/tag/arithmetic/)
- [coding exercise](https://helloacm.com/tag/coding-exercise/)
- [binary trees](https://helloacm.com/tag/binary-trees/)
- [pow(x](https://helloacm.com/tag/powx/)
- [n)](https://helloacm.com/tag/n/)
- [back tracing](https://helloacm.com/tag/back-tracing/)
- [n queen](https://helloacm.com/tag/n-queen/)
- [index sorting](https://helloacm.com/tag/index-sorting/)
- [remove duplicate](https://helloacm.com/tag/remove-duplicate/)
- [programming tasks](https://helloacm.com/tag/programming-tasks/)
- [sorted list](https://helloacm.com/tag/sorted-list/)
- [linked data structure](https://helloacm.com/tag/linked-data-structure/)
- [palindrome](https://helloacm.com/tag/palindrome/)
- [ip address](https://helloacm.com/tag/ip-address/)
- [c sharp](https://helloacm.com/tag/c-sharp/)
- [extension method](https://helloacm.com/tag/extension-method/)
- [static](https://helloacm.com/tag/static/)
- [newton's method](https://helloacm.com/tag/newtons-method/)
- [integer square root](https://helloacm.com/tag/integer-square-root/)
- [c++](https://helloacm.com/tag/c-3/)
- [tail recursion](https://helloacm.com/tag/tail-recursion/)
- [tail recursive](https://helloacm.com/tag/tail-recursive/)
- [compiler optimization](https://helloacm.com/tag/compiler-optimization/)
- [linux c programming](https://helloacm.com/tag/linux-c-programming/)
- [perror](https://helloacm.com/tag/perror/)
- [multi tasking](https://helloacm.com/tag/multi-tasking/)
- [integer splitting](https://helloacm.com/tag/integer-splitting/)
- [WSC](https://helloacm.com/tag/wsc/)
- [codepage 437](https://helloacm.com/tag/codepage-437/)
- [extended ascii](https://helloacm.com/tag/extended-ascii/)
- [chess board](https://helloacm.com/tag/chess-board/)
- [least recently used cache](https://helloacm.com/tag/least-recently-used-cache/)
- [xor](https://helloacm.com/tag/xor/)
- [O(n^2)](https://helloacm.com/tag/on2/)
- [algorithm complexity](https://helloacm.com/tag/algorithm-complexity/)
- [stack](https://helloacm.com/tag/stack/)
- [vba](https://helloacm.com/tag/vba-2/)
- [if function](https://helloacm.com/tag/if-function/)
- [nes](https://helloacm.com/tag/nes/)
- [VRAM](https://helloacm.com/tag/vram/)
- [RAM](https://helloacm.com/tag/ram/)
- [mapper](https://helloacm.com/tag/mapper/)
- [palette table](https://helloacm.com/tag/palette-table/)
- [joysticks](https://helloacm.com/tag/joysticks/)
- [assoc](https://helloacm.com/tag/assoc/)
- [ftype](https://helloacm.com/tag/ftype/)
- [windows cmd](https://helloacm.com/tag/windows-cmd/)
- [reverse root](https://helloacm.com/tag/reverse-root/)
- [buffer](https://helloacm.com/tag/buffer/)
- [A+B](https://helloacm.com/tag/ab/)
- [timus online judge](https://helloacm.com/tag/timus-online-judge/)
- [problems for beginners](https://helloacm.com/tag/problems-for-beginners/)
- [puzzle](https://helloacm.com/tag/puzzle/)
- [turtle graphics](https://helloacm.com/tag/turtle-graphics/)
- [path finding](https://helloacm.com/tag/path-finding/)
- [reverse tuple/string/list](https://helloacm.com/tag/reverse-tuplestringlist/)
- [std::map](https://helloacm.com/tag/stdmap/)
- [keypair](https://helloacm.com/tag/keypair/)
- [float](https://helloacm.com/tag/float/)
- [double](https://helloacm.com/tag/double/)
- [FC](https://helloacm.com/tag/fc/)
- [memory access](https://helloacm.com/tag/memory-access/)
- [Video RAM](https://helloacm.com/tag/video-ram/)
- [one's complement](https://helloacm.com/tag/ones-complement/)
- [two's complement](https://helloacm.com/tag/twos-complement/)
- [signed integers](https://helloacm.com/tag/signed-integers/)
- [binary representation](https://helloacm.com/tag/binary-representation/)
- [overflow](https://helloacm.com/tag/overflow/)
- [underflow](https://helloacm.com/tag/underflow/)
- [pi](https://helloacm.com/tag/pi/)
- [lua](https://helloacm.com/tag/lua/)
- [spoj online judge](https://helloacm.com/tag/spoj-online-judge-2/)
- [string.gmatch](https://helloacm.com/tag/string-gmatch/)
- [regular expression](https://helloacm.com/tag/regular-expression/)
- [fasthosts](https://helloacm.com/tag/fasthosts/)
- [anti spams](https://helloacm.com/tag/anti-spams/)
- [string splitting](https://helloacm.com/tag/string-splitting/)
- [string.rep](https://helloacm.com/tag/string-rep/)
- [bit xor](https://helloacm.com/tag/bit-xor/)
- [string.sub](https://helloacm.com/tag/string-sub/)
- [hash table](https://helloacm.com/tag/hash-table/)
- [divisible](https://helloacm.com/tag/divisible/)
- [LUA programming](https://helloacm.com/tag/lua-programming/)
- [sequence](https://helloacm.com/tag/sequence/)
- [sb2000](https://helloacm.com/tag/sb2000/)
- [famicom clone](https://helloacm.com/tag/famicom-clone/)
- [subor](https://helloacm.com/tag/subor/)
- [UM6567](https://helloacm.com/tag/um6567/)
- [bbgdos](https://helloacm.com/tag/bbgdos/)
- [bbgcdos](https://helloacm.com/tag/bbgcdos/)
- [8 bit os](https://helloacm.com/tag/8-bit-os/)
- [bbk](https://helloacm.com/tag/bbk/)
- [SB-DOS](https://helloacm.com/tag/sb-dos/)
- [SB-WIN](https://helloacm.com/tag/sb-win/)
- [UM6561](https://helloacm.com/tag/um6561/)
- [random](https://helloacm.com/tag/random/)
- [SetConsoleTextAttribute](https://helloacm.com/tag/setconsoletextattribute/)
- [GetConsoleScreenBufferInfo](https://helloacm.com/tag/getconsolescreenbufferinfo/)
- [SetConsoleOutputCP](https://helloacm.com/tag/setconsoleoutputcp/)
- [code page 437](https://helloacm.com/tag/code-page-437/)
- [starfield](https://helloacm.com/tag/starfield/)
- [row vector](https://helloacm.com/tag/row-vector/)
- [STD_OUTPUT_HANDLE](https://helloacm.com/tag/std_output_handle/)
- [SetConsoleCursorPosition](https://helloacm.com/tag/setconsolecursorposition/)
- [GetStdHandle](https://helloacm.com/tag/getstdhandle/)
- [gotoxy](https://helloacm.com/tag/gotoxy/)
- [graphics](https://helloacm.com/tag/graphics/)
- [random rectangles](https://helloacm.com/tag/random-rectangles/)
- [color](https://helloacm.com/tag/color/)
- [GetConsoleMode](https://helloacm.com/tag/getconsolemode/)
- [SetConsoleMode](https://helloacm.com/tag/setconsolemode/)
- [conio.h](https://helloacm.com/tag/conio-h/)
- [keypressed](https://helloacm.com/tag/keypressed/)
- [prime](https://helloacm.com/tag/prime/)
- [factor](https://helloacm.com/tag/factor/)
- [de-factorization](https://helloacm.com/tag/de-factorization/)
- [primeness](https://helloacm.com/tag/primeness/)
- [monto carlo](https://helloacm.com/tag/monto-carlo/)
- [seed](https://helloacm.com/tag/seed/)
- [approximation](https://helloacm.com/tag/approximation/)
- [valid parentheses](https://helloacm.com/tag/valid-parentheses/)
- [push and pop](https://helloacm.com/tag/push-and-pop/)
- [f-basic](https://helloacm.com/tag/f-basic/)
- [compute pi](https://helloacm.com/tag/compute-pi/)
- [monte carlo simulation](https://helloacm.com/tag/monte-carlo-simulation/)
- [setTimeout](https://helloacm.com/tag/settimeout/)
- [clearTimeout](https://helloacm.com/tag/cleartimeout/)
- [setInterval](https://helloacm.com/tag/setinterval/)
- [clearInterval](https://helloacm.com/tag/clearinterval/)
- [js](https://helloacm.com/tag/js/)
- [*nix](https://helloacm.com/tag/nix/)
- [seq.exe for windows](https://helloacm.com/tag/seq-exe-for-windows/)
- [number generator](https://helloacm.com/tag/number-generator/)
- [bash shell](https://helloacm.com/tag/bash-shell/)
- [command line options](https://helloacm.com/tag/command-line-options/)
- [utility](https://helloacm.com/tag/utility/)
- [gamshell.cmd](https://helloacm.com/tag/gamshell-cmd/)
- [game console](https://helloacm.com/tag/game-console/)
- [bubugao](https://helloacm.com/tag/bubugao/)
- [bbg](https://helloacm.com/tag/bbg/)
- [8-bit disk operating system](https://helloacm.com/tag/8-bit-disk-operating-system/)
- [dp](https://helloacm.com/tag/dp/)
- [basm.cmd](https://helloacm.com/tag/basm-cmd/)
- [famiclone](https://helloacm.com/tag/famiclone/)
- [pi computation](https://helloacm.com/tag/pi-computation/)
- [basic](https://helloacm.com/tag/basic/)
- [peek](https://helloacm.com/tag/peek/)
- [inkey$](https://helloacm.com/tag/inkey/)
- [chr$](https://helloacm.com/tag/chr/)
- [dumping the bios](https://helloacm.com/tag/dumping-the-bios/)
- [synchronize time and date](https://helloacm.com/tag/synchronize-time-and-date/)
- [pclink.cmd](https://helloacm.com/tag/pclink-cmd/)
- [pcsvr.exe](https://helloacm.com/tag/pcsvr-exe/)
- [pause.cmd](https://helloacm.com/tag/pause-cmd/)
- [pause.bat](https://helloacm.com/tag/pause-bat/)
- [6502 assembly](https://helloacm.com/tag/6502-assembly/)
- [command shell](https://helloacm.com/tag/command-shell/)
- [hot and cold startup](https://helloacm.com/tag/hot-and-cold-startup/)
- [boot](https://helloacm.com/tag/boot/)
- [education computer](https://helloacm.com/tag/education-computer/)
- [phpbb](https://helloacm.com/tag/phpbb/)
- [forum migration](https://helloacm.com/tag/forum-migration/)
- [mysql database](https://helloacm.com/tag/mysql-database/)
- [php and mysql](https://helloacm.com/tag/php-and-mysql/)
- [website pages](https://helloacm.com/tag/website-pages/)
- [mysqldump](https://helloacm.com/tag/mysqldump/)
- [grid walking](https://helloacm.com/tag/grid-walking/)
- [leetcode](https://helloacm.com/tag/leetcode/)
- [combinatoric mathematics](https://helloacm.com/tag/combinatoric-mathematics/)
- [ultimate game cartridge](https://helloacm.com/tag/ultimate-game-cartridge/)
- [n8 everdrive](https://helloacm.com/tag/n8-everdrive/)
- [sd card](https://helloacm.com/tag/sd-card/)
- [micro usb](https://helloacm.com/tag/micro-usb/)
- [run external program](https://helloacm.com/tag/run-external-program/)
- [run remote program](https://helloacm.com/tag/run-remote-program/)
- [dynamic programming with constraints](https://helloacm.com/tag/dynamic-programming-with-constraints/)
- [unique paths](https://helloacm.com/tag/unique-paths/)
- [interview question](https://helloacm.com/tag/interview-question/)
- [license](https://helloacm.com/tag/license/)
- [key string](https://helloacm.com/tag/key-string/)
- [decryption](https://helloacm.com/tag/decryption/)
- [encode](https://helloacm.com/tag/encode/)
- [decode](https://helloacm.com/tag/decode/)
- [Cryptography](https://helloacm.com/tag/cryptography-2/)
- [spiral matrix](https://helloacm.com/tag/spiral-matrix/)
- [count and say](https://helloacm.com/tag/count-and-say/)
- [wscript.arguments](https://helloacm.com/tag/wscript-arguments/)
- [reverse polish expression](https://helloacm.com/tag/reverse-polish-expression/)
- [memory allocation](https://helloacm.com/tag/memory-allocation/)
- [reference](https://helloacm.com/tag/reference/)
- [IsBlank](https://helloacm.com/tag/isblank/)
- [timeout](https://helloacm.com/tag/timeout/)
- [ping](https://helloacm.com/tag/ping/)
- [delay execution](https://helloacm.com/tag/delay-execution/)
- [batch programming](https://helloacm.com/tag/batch-programming/)
- [office](https://helloacm.com/tag/office-2/)
- [forecast function](https://helloacm.com/tag/forecast-function/)
- [microsoft office](https://helloacm.com/tag/microsoft-office/)
- [hex to decimal](https://helloacm.com/tag/hex-to-decimal/)
- [strtol](https://helloacm.com/tag/strtol/)
- [stdlib.h](https://helloacm.com/tag/stdlib-h/)
- [insertion sort](https://helloacm.com/tag/insertion-sort/)
- [quadratic](https://helloacm.com/tag/quadratic/)
- [running time complexity](https://helloacm.com/tag/running-time-complexity/)
- [raspberry pi](https://helloacm.com/tag/raspberry-pi-2/)
- [apache](https://helloacm.com/tag/apache/)
- [http server](https://helloacm.com/tag/http-server/)
- [raspi-config](https://helloacm.com/tag/raspi-config/)
- [CPU temperature](https://helloacm.com/tag/cpu-temperature/)
- [uptime](https://helloacm.com/tag/uptime/)
- [parentheses](https://helloacm.com/tag/parentheses/)
- [arguments](https://helloacm.com/tag/arguments/)
- [brackets](https://helloacm.com/tag/brackets/)
- [vb](https://helloacm.com/tag/vb/)
- [temperature](https://helloacm.com/tag/temperature/)
- [external USB fan/cooler](https://helloacm.com/tag/external-usb-fancooler/)
- [ssh](https://helloacm.com/tag/ssh/)
- [xrdp](https://helloacm.com/tag/xrdp/)
- [remote desktop connection](https://helloacm.com/tag/remote-desktop-connection/)
- [operating system](https://helloacm.com/tag/operating-system/)
- [SDHC card](https://helloacm.com/tag/sdhc-card/)
- [spreadsheet](https://helloacm.com/tag/spreadsheet/)
- [auto completion](https://helloacm.com/tag/auto-completion/)
- [drag and scroll](https://helloacm.com/tag/drag-and-scroll/)
- [cells](https://helloacm.com/tag/cells/)
- [heat map](https://helloacm.com/tag/heat-map/)
- [reduce heat](https://helloacm.com/tag/reduce-heat/)
- [motherboard](https://helloacm.com/tag/motherboard/)
- [heat sinks](https://helloacm.com/tag/heat-sinks/)
- [usb cool fan](https://helloacm.com/tag/usb-cool-fan/)
- [delphi 2007 ide](https://helloacm.com/tag/delphi-2007-ide/)
- [type library editor](https://helloacm.com/tag/type-library-editor/)
- [com/ole objects](https://helloacm.com/tag/comole-objects/)
- [processing](https://helloacm.com/tag/processing/)
- [processingjs](https://helloacm.com/tag/processingjs/)
- [random shapes](https://helloacm.com/tag/random-shapes/)
- [computer arts](https://helloacm.com/tag/computer-arts/)
- [clock](https://helloacm.com/tag/clock/)
- [animations](https://helloacm.com/tag/animations/)
- [graphics and images](https://helloacm.com/tag/graphics-and-images/)
- [circles](https://helloacm.com/tag/circles/)
- [mouseX and mouseY](https://helloacm.com/tag/mousex-and-mousey/)
- [shapes](https://helloacm.com/tag/shapes/)
- [for loop](https://helloacm.com/tag/for-loop/)
- [unrolling the loop](https://helloacm.com/tag/unrolling-the-loop/)
- [linux commands](https://helloacm.com/tag/linux-commands/)
- [folder deletion](https://helloacm.com/tag/folder-deletion/)
- [rsync -a --delete](https://helloacm.com/tag/rsync-a-delete/)
- [compute animiations](https://helloacm.com/tag/compute-animiations/)
- [random pixels](https://helloacm.com/tag/random-pixels/)
- [computer graphics](https://helloacm.com/tag/computer-graphics/)
- [random colour bars](https://helloacm.com/tag/random-colour-bars/)
- [processing js](https://helloacm.com/tag/processing-js/)
- [compute graphics](https://helloacm.com/tag/compute-graphics/)
- [regex](https://helloacm.com/tag/regex/)
- [DOMDocument](https://helloacm.com/tag/domdocument/)
- [DOM](https://helloacm.com/tag/dom/)
- [strictErrorChecking](https://helloacm.com/tag/stricterrorchecking/)
- [scripting](https://helloacm.com/tag/scripting/)
- [gd star rating](https://helloacm.com/tag/gd-star-rating/)
- [cloudflare](https://helloacm.com/tag/cloudflare/)
- [cdn](https://helloacm.com/tag/cdn/)
- [content delivery network](https://helloacm.com/tag/content-delivery-network/)
- [Rocket Loader](https://helloacm.com/tag/rocket-loader/)
- [pointer arithmetic](https://helloacm.com/tag/pointer-arithmetic/)
- [D2007](https://helloacm.com/tag/d2007/)
- [D2009](https://helloacm.com/tag/d2009/)
- [RAD](https://helloacm.com/tag/rad/)
- [pointers](https://helloacm.com/tag/pointers/)
- [reverse string](https://helloacm.com/tag/reverse-string/)
- [integer data types](https://helloacm.com/tag/integer-data-types/)
- [nativeint](https://helloacm.com/tag/nativeint/)
- [dword](https://helloacm.com/tag/dword/)
- [win32 apis](https://helloacm.com/tag/win32-apis/)
- [sql statement](https://helloacm.com/tag/sql-statement/)
- [search key](https://helloacm.com/tag/search-key/)
- [tables](https://helloacm.com/tag/tables/)
- [word boundary](https://helloacm.com/tag/word-boundary/)
- [loading bar](https://helloacm.com/tag/loading-bar/)
- [sending keystrokes](https://helloacm.com/tag/sending-keystrokes/)
- [linux command shell](https://helloacm.com/tag/linux-command-shell/)
- [paste utility](https://helloacm.com/tag/paste-utility/)
- [paste two files](https://helloacm.com/tag/paste-two-files/)
- [combine files column by column](https://helloacm.com/tag/combine-files-column-by-column/)
- [serial](https://helloacm.com/tag/serial/)
- [delimiter](https://helloacm.com/tag/delimiter/)
- [commands](https://helloacm.com/tag/commands/)
- [os](https://helloacm.com/tag/os/)
- [clip](https://helloacm.com/tag/clip/)
- [dir](https://helloacm.com/tag/dir/)
- [pipeline](https://helloacm.com/tag/pipeline/)
- [redirection of output](https://helloacm.com/tag/redirection-of-output/)
- [webhosting review](https://helloacm.com/tag/webhosting-review/)
- [dedicated server](https://helloacm.com/tag/dedicated-server/)
- [vps](https://helloacm.com/tag/vps/)
- [virtual private server](https://helloacm.com/tag/virtual-private-server/)
- [share hosting](https://helloacm.com/tag/share-hosting/)
- [quickhostuk](https://helloacm.com/tag/quickhostuk/)
- [angry bots](https://helloacm.com/tag/angry-bots/)
- [360 spiders](https://helloacm.com/tag/360-spiders/)
- [robots.txt](https://helloacm.com/tag/robots-txt/)
- [.htaccess](https://helloacm.com/tag/htaccess/)
- [apache webserver](https://helloacm.com/tag/apache-webserver/)
- [mod_rewrite module](https://helloacm.com/tag/mod_rewrite-module/)
- [fasthosts web hosting](https://helloacm.com/tag/fasthosts-web-hosting/)
- [share hosts](https://helloacm.com/tag/share-hosts/)
- [crawling](https://helloacm.com/tag/crawling/)
- [php code](https://helloacm.com/tag/php-code/)
- [HTTP_USER_AGENT](https://helloacm.com/tag/http_user_agent/)
- [load balancing](https://helloacm.com/tag/load-balancing/)
- [servers](https://helloacm.com/tag/servers/)
- [common.php](https://helloacm.com/tag/common-php/)
- [include file](https://helloacm.com/tag/include-file/)
- [header](https://helloacm.com/tag/header/)
- [ob_start('gz_handler')](https://helloacm.com/tag/ob_startgz_handler/)
- [ob_end_flush](https://helloacm.com/tag/ob_end_flush/)
- [HTTP_ACCEPT_ENCODING](https://helloacm.com/tag/http_accept_encoding/)
- [script filename](https://helloacm.com/tag/script-filename/)
- [output buffer](https://helloacm.com/tag/output-buffer/)
- [gzip](https://helloacm.com/tag/gzip/)
- [404 error not found](https://helloacm.com/tag/404-error-not-found/)
- [Raspberry PI B plus model](https://helloacm.com/tag/raspberry-pi-b-plus-model/)
- [enhanced Raspberry B model](https://helloacm.com/tag/enhanced-raspberry-b-model/)
- [tiny PC](https://helloacm.com/tag/tiny-pc/)
- [4 usb ports](https://helloacm.com/tag/4-usb-ports/)
- [less power consumption](https://helloacm.com/tag/less-power-consumption/)
- [printed circuit board](https://helloacm.com/tag/printed-circuit-board/)
- [Review](https://helloacm.com/tag/review-2/)
- [webhosting companies](https://helloacm.com/tag/webhosting-companies/)
- [content delivery networks](https://helloacm.com/tag/content-delivery-networks/)
- [control panel](https://helloacm.com/tag/control-panel/)
- [unlimited bandwidth](https://helloacm.com/tag/unlimited-bandwidth/)
- [apache2 server](https://helloacm.com/tag/apache2-server/)
- [linux shell](https://helloacm.com/tag/linux-shell/)
- [Cost Per Click](https://helloacm.com/tag/cost-per-click/)
- [Adsense Revenue](https://helloacm.com/tag/adsense-revenue/)
- [Block URLs](https://helloacm.com/tag/block-urls/)
- [web hosting](https://helloacm.com/tag/web-hosting/)
- [traffic](https://helloacm.com/tag/traffic/)
- [merge two files](https://helloacm.com/tag/merge-two-files/)
- [domain](https://helloacm.com/tag/domain/)
- [low cpc](https://helloacm.com/tag/low-cpc/)
- [advertiser](https://helloacm.com/tag/advertiser/)
- [apache2](https://helloacm.com/tag/apache2/)
- [shell_exec](https://helloacm.com/tag/shell_exec/)
- [exec](https://helloacm.com/tag/exec/)
- [page template](https://helloacm.com/tag/page-template/)
- [single.php](https://helloacm.com/tag/single-php/)
- [next post button](https://helloacm.com/tag/next-post-button/)
- [Left and Right Function in PHP](https://helloacm.com/tag/left-and-right-function-in-php/)
- [visual basic](https://helloacm.com/tag/visual-basic/)
- [utility functions](https://helloacm.com/tag/utility-functions/)
- [substr](https://helloacm.com/tag/substr/)
- [substring](https://helloacm.com/tag/substring/)
- [string implementation](https://helloacm.com/tag/string-implementation/)
- [crontab](https://helloacm.com/tag/crontab/)
- [linux server](https://helloacm.com/tag/linux-server/)
- [web server](https://helloacm.com/tag/web-server/)
- [DOCUMENT_ROOT](https://helloacm.com/tag/document_root/)
- [SERVER_NAME](https://helloacm.com/tag/server_name/)
- [financial functions](https://helloacm.com/tag/financial-functions/)
- [currency format](https://helloacm.com/tag/currency-format/)
- [mortgage](https://helloacm.com/tag/mortgage/)
- [future value](https://helloacm.com/tag/future-value/)
- [interests](https://helloacm.com/tag/interests/)
- [cache class](https://helloacm.com/tag/cache-class/)
- [speed improvements](https://helloacm.com/tag/speed-improvements/)
- [performance enhancements](https://helloacm.com/tag/performance-enhancements/)
- [passing variables](https://helloacm.com/tag/passing-variables/)
- [session variables](https://helloacm.com/tag/session-variables/)
- [get parameters](https://helloacm.com/tag/get-parameters/)
- [url decode/encode](https://helloacm.com/tag/url-decodeencode/)
- [key value pair](https://helloacm.com/tag/key-value-pair/)
- [webpages](https://helloacm.com/tag/webpages/)
- [page redirection](https://helloacm.com/tag/page-redirection/)
- [dynamic scripting language](https://helloacm.com/tag/dynamic-scripting-language/)
- [excel spread sheet](https://helloacm.com/tag/excel-spread-sheet/)
- [php and vbscript](https://helloacm.com/tag/php-and-vbscript/)
- [colour cells/pixels](https://helloacm.com/tag/colour-cellspixels/)
- [scripting language](https://helloacm.com/tag/scripting-language/)
- [programming experiments](https://helloacm.com/tag/programming-experiments/)
- [raspberry pi logo](https://helloacm.com/tag/raspberry-pi-logo/)
- [imagecreatefromjpeg](https://helloacm.com/tag/imagecreatefromjpeg/)
- [imagecreatefrompng](https://helloacm.com/tag/imagecreatefrompng/)
- [imagecolorat](https://helloacm.com/tag/imagecolorat/)
- [CreateObject](https://helloacm.com/tag/createobject/)
- [Linux Shell Programming - yes](https://helloacm.com/tag/linux-shell-programming-yes/)
- [Utilities](https://helloacm.com/tag/utilities/)
- [Fun tools](https://helloacm.com/tag/fun-tools/)
- [shell variables](https://helloacm.com/tag/shell-variables/)
- [bash](https://helloacm.com/tag/bash/)
- [Compress CSS Style Sheets](https://helloacm.com/tag/compress-css-style-sheets/)
- [site loading speed improvement](https://helloacm.com/tag/site-loading-speed-improvement/)
- [shrink css files](https://helloacm.com/tag/shrink-css-files/)
- [reduce download filesize](https://helloacm.com/tag/reduce-download-filesize/)
- [bandwidth](https://helloacm.com/tag/bandwidth/)
- [PHP scripting](https://helloacm.com/tag/php-scripting/)
- [file_put_contents](https://helloacm.com/tag/file_put_contents/)
- [file_get_contents](https://helloacm.com/tag/file_get_contents/)
- [Self-executing Anonymous Functions in Javascript](https://helloacm.com/tag/self-executing-anonymous-functions-in-javascript/)
- [order of declaration](https://helloacm.com/tag/order-of-declaration/)
- [scope](https://helloacm.com/tag/scope/)
- [local](https://helloacm.com/tag/local/)
- [temporary scope](https://helloacm.com/tag/temporary-scope/)
- [self executing](https://helloacm.com/tag/self-executing/)
- [Index Sorting in PHP](https://helloacm.com/tag/index-sorting-in-php/)
- [asort](https://helloacm.com/tag/asort/)
- [sorting algorithm](https://helloacm.com/tag/sorting-algorithm/)
- [How Many Zeros at the end of 1024!](https://helloacm.com/tag/how-many-zeros-at-the-end-of-1024/)
- [count zeros](https://helloacm.com/tag/count-zeros/)
- [efficiency](https://helloacm.com/tag/efficiency/)
- [division factors](https://helloacm.com/tag/division-factors/)
- [solution](https://helloacm.com/tag/solution/)
- [Large Address Aware](https://helloacm.com/tag/large-address-aware/)
- [LAA](https://helloacm.com/tag/laa/)
- [32-bit](https://helloacm.com/tag/32-bit-2/)
- [applications](https://helloacm.com/tag/applications/)
- [PAE](https://helloacm.com/tag/pae/)
- [/3GB](https://helloacm.com/tag/3gb/)
- [physical address extension](https://helloacm.com/tag/physical-address-extension/)
- [Tricks of VBScript](https://helloacm.com/tag/tricks-of-vbscript/)
- [Notes](https://helloacm.com/tag/notes/)
- [Skills](https://helloacm.com/tag/skills/)
- [xiao ba wang](https://helloacm.com/tag/xiao-ba-wang/)
- [8-bit nintendo games](https://helloacm.com/tag/8-bit-nintendo-games/)
- [6502 CPU](https://helloacm.com/tag/6502-cpu/)
- [rom](https://helloacm.com/tag/rom/)
- [cartridges](https://helloacm.com/tag/cartridges/)
- [keyboard](https://helloacm.com/tag/keyboard/)
- [fbasic and gbasic programming](https://helloacm.com/tag/fbasic-and-gbasic-programming/)
- [SB486D](https://helloacm.com/tag/sb486d/)
- [SB926](https://helloacm.com/tag/sb926/)
- [swap file](https://helloacm.com/tag/swap-file/)
- [swapon -s](https://helloacm.com/tag/swapon-s/)
- [mkswap](https://helloacm.com/tag/mkswap/)
- [WScript Object in MS Script Control](https://helloacm.com/tag/wscript-object-in-ms-script-control/)
- [example](https://helloacm.com/tag/example/)
- [add object](https://helloacm.com/tag/add-object/)
- [constructor](https://helloacm.com/tag/constructor/)
- [destructor](https://helloacm.com/tag/destructor/)
- [object](https://helloacm.com/tag/object/)
- [class](https://helloacm.com/tag/class/)
- [object oriented](https://helloacm.com/tag/object-oriented/)
- [strlen](https://helloacm.com/tag/strlen/)
- [get string length under windows batch programming](https://helloacm.com/tag/get-string-length-under-windows-batch-programming/)
- [shift](https://helloacm.com/tag/shift/)
- [not defined](https://helloacm.com/tag/not-defined/)
- [File Opening Mode for TFileStream in Delphi](https://helloacm.com/tag/file-opening-mode-for-tfilestream-in-delphi/)
- [Opening Files](https://helloacm.com/tag/opening-files/)
- [Binary](https://helloacm.com/tag/binary/)
- [TFileStream](https://helloacm.com/tag/tfilestream/)
- [File Open Modes](https://helloacm.com/tag/file-open-modes/)
- [Language](https://helloacm.com/tag/language/)
- [duplicate database](https://helloacm.com/tag/duplicate-database/)
- [copy tables](https://helloacm.com/tag/copy-tables/)
- [sql syntax](https://helloacm.com/tag/sql-syntax/)
- [pascal triangle](https://helloacm.com/tag/pascal-triangle/)
- [windows command line shell](https://helloacm.com/tag/windows-command-line-shell/)
- [cmd.exe](https://helloacm.com/tag/cmd-exe/)
- [scripts](https://helloacm.com/tag/scripts/)
- [goto label](https://helloacm.com/tag/goto-label/)
- [Checking Bots using PHP Script](https://helloacm.com/tag/checking-bots-using-php-script/)
- [$_SERVER['HTTP_USER_AGENT'])](https://helloacm.com/tag/_serverhttp_user_agent/)
- [spider](https://helloacm.com/tag/spider/)
- [google](https://helloacm.com/tag/google/)
- [grab pages](https://helloacm.com/tag/grab-pages/)
- [0/1 Knapsack Problem](https://helloacm.com/tag/01-knapsack-problem/)
- [combinatics](https://helloacm.com/tag/combinatics/)
- [Complete Knapsack Problem](https://helloacm.com/tag/complete-knapsack-problem/)
- [tiny URL redirection function](https://helloacm.com/tag/tiny-url-redirection-function/)
- [screen width/resolution](https://helloacm.com/tag/screen-widthresolution/)
- [tail recursion optimisation](https://helloacm.com/tag/tail-recursion-optimisation/)
- [C/C++ coding exercise](https://helloacm.com/tag/cc-coding-exercise/)
- [compiler optimisation](https://helloacm.com/tag/compiler-optimisation/)
- [factorial](https://helloacm.com/tag/factorial/)
- [formula to compute e](https://helloacm.com/tag/formula-to-compute-e/)
- [mathematical constant that is the base of the natural logarithm](https://helloacm.com/tag/mathematical-constant-that-is-the-base-of-the-natural-logarithm/)
- [polygon area](https://helloacm.com/tag/polygon-area/)
- [signed area](https://helloacm.com/tag/signed-area/)
- [irregular or regular polygon](https://helloacm.com/tag/irregular-or-regular-polygon/)
- [c sharp code](https://helloacm.com/tag/c-sharp-code/)
- [Math Example using Windows Batch Script](https://helloacm.com/tag/math-example-using-windows-batch-script/)
- [Arithmetic Operations](https://helloacm.com/tag/arithmetic-operations/)
- [Math Assignments](https://helloacm.com/tag/math-assignments/)
- [Batch Script](https://helloacm.com/tag/batch-script-2/)
- [Windows Command](https://helloacm.com/tag/windows-command/)
- [Running VBScript in MS ScriptControl](https://helloacm.com/tag/running-vbscript-in-ms-scriptcontrol/)
- [ScriptControl](https://helloacm.com/tag/scriptcontrol/)
- [Script To Exe](https://helloacm.com/tag/script-to-exe/)
- [Executable Converter](https://helloacm.com/tag/executable-converter/)
- [vbsedit](https://helloacm.com/tag/vbsedit/)
- [wsript.exe](https://helloacm.com/tag/wsript-exe/)
- [wrapping source code](https://helloacm.com/tag/wrapping-source-code/)
- [Compute PowerMod a^b%n](https://helloacm.com/tag/compute-powermod-abn/)
- [modulo rules](https://helloacm.com/tag/modulo-rules/)
- [decomposition](https://helloacm.com/tag/decomposition/)
- [power](https://helloacm.com/tag/power/)
- [Downloading URL using Python](https://helloacm.com/tag/downloading-url-using-python/)
- [urllib](https://helloacm.com/tag/urllib/)
- [urllib2](https://helloacm.com/tag/urllib2/)
- [file](https://helloacm.com/tag/file/)
- [download](https://helloacm.com/tag/download/)
- [__name__](https://helloacm.com/tag/__name__/)
- [module](https://helloacm.com/tag/module/)
- [imported](https://helloacm.com/tag/imported/)
- [main function](https://helloacm.com/tag/main-function/)
- [C/C++ dll project](https://helloacm.com/tag/cc-dll-project/)
- [codeblocks IDE](https://helloacm.com/tag/codeblocks-ide/)
- [project creation wizard](https://helloacm.com/tag/project-creation-wizard/)
- [tool](https://helloacm.com/tag/tool/)
- [integrated development environment](https://helloacm.com/tag/integrated-development-environment/)
- [dll files](https://helloacm.com/tag/dll-files/)
- [exe](https://helloacm.com/tag/exe/)
- [pe format](https://helloacm.com/tag/pe-format/)
- [Mono-Develop from Linux](https://helloacm.com/tag/mono-develop-from-linux/)
- [platform](https://helloacm.com/tag/platform/)
- [development](https://helloacm.com/tag/development/)
- [compound commands](https://helloacm.com/tag/compound-commands/)
- [combination of commands](https://helloacm.com/tag/combination-of-commands/)
- [windows shell](https://helloacm.com/tag/windows-shell/)
- [LCM](https://helloacm.com/tag/lcm/)
- [Non-recursive](https://helloacm.com/tag/non-recursive/)
- [Euclidean Algorithm](https://helloacm.com/tag/euclidean-algorithm/)
- [fundamental](https://helloacm.com/tag/fundamental/)
- [iterative approach](https://helloacm.com/tag/iterative-approach/)
- [PHP Script to Check the Page Speed](https://helloacm.com/tag/php-script-to-check-the-page-speed/)
- [ob_start](https://helloacm.com/tag/ob_start/)
- [ob_get_length](https://helloacm.com/tag/ob_get_length/)
- [caching](https://helloacm.com/tag/caching/)
- [static html files](https://helloacm.com/tag/static-html-files/)
- [microsoft office products](https://helloacm.com/tag/microsoft-office-products/)
- [code example](https://helloacm.com/tag/code-example/)
- [samples](https://helloacm.com/tag/samples/)
- [chart](https://helloacm.com/tag/chart/)
- [create chart](https://helloacm.com/tag/create-chart/)
- [system variables](https://helloacm.com/tag/system-variables/)
- [users](https://helloacm.com/tag/users/)
- [Volatile](https://helloacm.com/tag/volatile/)
- [bash script](https://helloacm.com/tag/bash-script/)
- [change filenames lowercase uppercase](https://helloacm.com/tag/change-filenames-lowercase-uppercase/)
- [directories](https://helloacm.com/tag/directories/)
- [loop folders](https://helloacm.com/tag/loop-folders/)
- [linux operating system](https://helloacm.com/tag/linux-operating-system/)
- [BASH Script to Solve 8 Queen Problem](https://helloacm.com/tag/bash-script-to-solve-8-queen-problem/)
- [shell script](https://helloacm.com/tag/shell-script/)
- [8 queen problem](https://helloacm.com/tag/8-queen-problem/)
- [artificial intelligence](https://helloacm.com/tag/artificial-intelligence/)
- [search algorithm](https://helloacm.com/tag/search-algorithm/)
- [bash shell script](https://helloacm.com/tag/bash-shell-script/)
- [integer factorial](https://helloacm.com/tag/integer-factorial/)
- [Form validation](https://helloacm.com/tag/form-validation/)
- [test if javascript is on/off](https://helloacm.com/tag/test-if-javascript-is-onoff/)
- [web pages](https://helloacm.com/tag/web-pages/)
- [combination number](https://helloacm.com/tag/combination-number/)
- [c/c++ function](https://helloacm.com/tag/cc-function/)
- [maths](https://helloacm.com/tag/maths/)
- [code optimisation](https://helloacm.com/tag/code-optimisation/)
- [runtime complexity](https://helloacm.com/tag/runtime-complexity/)
- [open spreadsheet](https://helloacm.com/tag/open-spreadsheet/)
- [delete rows](https://helloacm.com/tag/delete-rows/)
- [csv](https://helloacm.com/tag/csv/)
- [comma separated values](https://helloacm.com/tag/comma-separated-values/)
- [counting squares](https://helloacm.com/tag/counting-squares/)
- [validate](https://helloacm.com/tag/validate/)
- [bit difference count](https://helloacm.com/tag/bit-difference-count/)
- [integer math](https://helloacm.com/tag/integer-math/)
- [date class](https://helloacm.com/tag/date-class/)
- [oop](https://helloacm.com/tag/oop/)
- [object oriented programming](https://helloacm.com/tag/object-oriented-programming/)
- [instance of class](https://helloacm.com/tag/instance-of-class/)
- [objects](https://helloacm.com/tag/objects/)
- [simpledateformat](https://helloacm.com/tag/simpledateformat/)
- [B. Jumping Jack](https://helloacm.com/tag/b-jumping-jack/)
- [Codeforces](https://helloacm.com/tag/codeforces-2/)
- [Python solution](https://helloacm.com/tag/python-solution/)
- [array notation in C/C++](https://helloacm.com/tag/array-notation-in-cc/)
- [access array](https://helloacm.com/tag/access-array/)
- [java questions](https://helloacm.com/tag/java-questions/)
- [programming examples](https://helloacm.com/tag/programming-examples/)
- [__FILE__](https://helloacm.com/tag/__file__/)
- [__LINE__](https://helloacm.com/tag/__line__/)
- [line number and source file name](https://helloacm.com/tag/line-number-and-source-file-name/)
- [error](https://helloacm.com/tag/error/)
- [exception](https://helloacm.com/tag/exception/)
- [square root](https://helloacm.com/tag/square-root/)
- [bc](https://helloacm.com/tag/bc/)
- [bash calculator](https://helloacm.com/tag/bash-calculator/)
- [command line](https://helloacm.com/tag/command-line/)
- [C++ programming language](https://helloacm.com/tag/c-programming-language/)
- [static methods](https://helloacm.com/tag/static-methods/)
- [static attributes/variables](https://helloacm.com/tag/static-attributesvariables/)
- [classes](https://helloacm.com/tag/classes/)
- [Less Known HTML Tags](https://helloacm.com/tag/less-known-html-tags/)
- [tags](https://helloacm.com/tag/tags/)
- [quote](https://helloacm.com/tag/quote/)
- [strike](https://helloacm.com/tag/strike/)
- [em tag](https://helloacm.com/tag/em-tag/)
- [bdo](https://helloacm.com/tag/bdo/)
- [blockquote](https://helloacm.com/tag/blockquote/)
- [acronym](https://helloacm.com/tag/acronym/)
- [A SleepSort using Multiprocessing in BASH](https://helloacm.com/tag/a-sleepsort-using-multiprocessing-in-bash/)
- [multitasking](https://helloacm.com/tag/multitasking/)
- [threads](https://helloacm.com/tag/threads/)
- [synchronization](https://helloacm.com/tag/synchronization/)
- [critical section](https://helloacm.com/tag/critical-section/)
- [C. Cd and pwd commands](https://helloacm.com/tag/c-cd-and-pwd-commands/)
- [String Algorithms](https://helloacm.com/tag/string-algorithms/)
- [C++ coding exercise](https://helloacm.com/tag/c-coding-exercise/)
- [nl utility on windows](https://helloacm.com/tag/nl-utility-on-windows/)
- [gcc compiler](https://helloacm.com/tag/gcc-compiler/)
- [line numbers](https://helloacm.com/tag/line-numbers/)
- [read text files](https://helloacm.com/tag/read-text-files/)
- [command line shell](https://helloacm.com/tag/command-line-shell/)
- [source codes and binaries](https://helloacm.com/tag/source-codes-and-binaries/)
- [executables](https://helloacm.com/tag/executables/)
- [program download](https://helloacm.com/tag/program-download/)
- [coding examples](https://helloacm.com/tag/coding-examples/)
- [implementations](https://helloacm.com/tag/implementations/)
- [convert js/vbs to exe](https://helloacm.com/tag/convert-jsvbs-to-exe/)
- [script32](https://helloacm.com/tag/script32/)
- [convert script to executable](https://helloacm.com/tag/convert-script-to-executable/)
- [win64](https://helloacm.com/tag/win64/)
- [freeware](https://helloacm.com/tag/freeware/)
- [software](https://helloacm.com/tag/software/)
- [cache](https://helloacm.com/tag/cache/)
- [reduce CPU usage](https://helloacm.com/tag/reduce-cpu-usage/)
- [readfile](https://helloacm.com/tag/readfile/)
- [compressing output](https://helloacm.com/tag/compressing-output/)
- [gz_handler](https://helloacm.com/tag/gz_handler/)
- [php function](https://helloacm.com/tag/php-function/)
- [posting to twitter](https://helloacm.com/tag/posting-to-twitter/)
- [twitter apis](https://helloacm.com/tag/twitter-apis/)
- [php twitter oauth](https://helloacm.com/tag/php-twitter-oauth/)
- [278B](https://helloacm.com/tag/278b/)
- [new problem](https://helloacm.com/tag/new-problem/)
- [boolean array](https://helloacm.com/tag/boolean-array/)
- [checks](https://helloacm.com/tag/checks/)
- [advanced dns](https://helloacm.com/tag/advanced-dns/)
- [a record](https://helloacm.com/tag/a-record/)
- [aaaa record](https://helloacm.com/tag/aaaa-record/)
- [txt record](https://helloacm.com/tag/txt-record/)
- [spf record](https://helloacm.com/tag/spf-record/)
- [cname](https://helloacm.com/tag/cname/)
- [bouncing ball](https://helloacm.com/tag/bouncing-ball/)
- [processing scripting](https://helloacm.com/tag/processing-scripting/)
- [computer images](https://helloacm.com/tag/computer-images/)
- [c programming](https://helloacm.com/tag/c-programming/)
- [8-bit nintendo entertainment system](https://helloacm.com/tag/8-bit-nintendo-entertainment-system/)
- [gaming](https://helloacm.com/tag/gaming/)
- [controlling spirits using joysticks](https://helloacm.com/tag/controlling-spirits-using-joysticks/)
- [virtual emulator](https://helloacm.com/tag/virtual-emulator/)
- [wordpress posts](https://helloacm.com/tag/wordpress-posts/)
- [revive old posts](https://helloacm.com/tag/revive-old-posts/)
- [social networks](https://helloacm.com/tag/social-networks/)
- [Select Random SQL](https://helloacm.com/tag/select-random-sql/)
- [methods](https://helloacm.com/tag/methods/)
- [rows](https://helloacm.com/tag/rows/)
- [fetching](https://helloacm.com/tag/fetching/)
- [Sprites](https://helloacm.com/tag/sprites/)
- [include PHP](https://helloacm.com/tag/include-php/)
- [page of archive](https://helloacm.com/tag/page-of-archive/)
- [sorted by month](https://helloacm.com/tag/sorted-by-month/)
- [articles summary](https://helloacm.com/tag/articles-summary/)
- [wordpress plugins](https://helloacm.com/tag/wordpress-plugins/)
- [group by statement](https://helloacm.com/tag/group-by-statement/)
- [displaying line numbers](https://helloacm.com/tag/displaying-line-numbers/)
- [linux shells](https://helloacm.com/tag/linux-shells/)
- [unix](https://helloacm.com/tag/unix/)
- [nl](https://helloacm.com/tag/nl/)
- [cat -n](https://helloacm.com/tag/cat-n/)
- [awk](https://helloacm.com/tag/awk/)
- [shell scripting](https://helloacm.com/tag/shell-scripting/)
- [sorting in reverse order](https://helloacm.com/tag/sorting-in-reverse-order/)
- [Interview Question: 2^n - 1 divide by 7](https://helloacm.com/tag/interview-question-2n-1-divide-by-7/)
- [Quick Sort Animation](https://helloacm.com/tag/quick-sort-animation/)
- [O(1)](https://helloacm.com/tag/o1/)
- [C++ solution](https://helloacm.com/tag/c-solution/)
- [1877 bicyle codes](https://helloacm.com/tag/1877-bicyle-codes/)
- [emulation](https://helloacm.com/tag/emulation/)
- [milestones](https://helloacm.com/tag/milestones/)
- [domain history](https://helloacm.com/tag/domain-history/)
- [domain report](https://helloacm.com/tag/domain-report/)
- [wow](https://helloacm.com/tag/wow/)
- [string concatenation](https://helloacm.com/tag/string-concatenation/)
- [low level code optimization](https://helloacm.com/tag/low-level-code-optimization/)
- [absolute](https://helloacm.com/tag/absolute/)
- [cdq](https://helloacm.com/tag/cdq/)
- [Visual Studio](https://helloacm.com/tag/visual-studio/)
- [Execute External Programs](https://helloacm.com/tag/execute-external-programs/)
- [the Python Ways. Implementation](https://helloacm.com/tag/the-python-ways-implementation/)
- [Launching External Commands](https://helloacm.com/tag/launching-external-commands/)
- [System](https://helloacm.com/tag/system/)
- [Invoke](https://helloacm.com/tag/invoke/)
- [event-driven](https://helloacm.com/tag/event-driven/)
- [distributed](https://helloacm.com/tag/distributed/)
- [non-blocking I/O model](https://helloacm.com/tag/non-blocking-io-model/)
- [lightweight](https://helloacm.com/tag/lightweight/)
- [web application](https://helloacm.com/tag/web-application/)
- [dynamic](https://helloacm.com/tag/dynamic/)
- [server-script](https://helloacm.com/tag/server-script/)
- [toolkit](https://helloacm.com/tag/toolkit/)
- [A. Double Cola](https://helloacm.com/tag/a-double-cola/)
- [problems](https://helloacm.com/tag/problems/)
- [big bang theory](https://helloacm.com/tag/big-bang-theory/)
- [submission](https://helloacm.com/tag/submission/)
- [programs](https://helloacm.com/tag/programs/)
- [PHP Cache Improvements](https://helloacm.com/tag/php-cache-improvements/)
- [flock](https://helloacm.com/tag/flock/)
- [multiprocess](https://helloacm.com/tag/multiprocess/)
- [synchronisation](https://helloacm.com/tag/synchronisation/)
- [compressing](https://helloacm.com/tag/compressing/)
- [Hello World Program in LOGO](https://helloacm.com/tag/hello-world-program-in-logo/)
- [turtle drawing](https://helloacm.com/tag/turtle-drawing/)
- [paint](https://helloacm.com/tag/paint/)
- [computer images/graphics](https://helloacm.com/tag/computer-imagesgraphics/)
- [Rot13 and Rot5 implementation using Windows Batch](https://helloacm.com/tag/rot13-and-rot5-implementation-using-windows-batch/)
- [windows batch programming](https://helloacm.com/tag/windows-batch-programming/)
- [shortest implementation](https://helloacm.com/tag/shortest-implementation/)
- [The Multithreading Bug in a C# Project](https://helloacm.com/tag/the-multithreading-bug-in-a-c-project/)

## Topic Tags

- [SEO](https://helloacm.com/forums/topic-tag/seo/)
- [WordPress](https://helloacm.com/forums/topic-tag/wordpress/)
- [Coding for the Web](https://helloacm.com/forums/topic-tag/coding-for-the-web/)
- [Data Structure](https://helloacm.com/forums/topic-tag/data-structure/)
- [Algorithms](https://helloacm.com/forums/topic-tag/algorithms/)
- [Shell Scripting](https://helloacm.com/forums/topic-tag/shell-scripting/)
- [Database](https://helloacm.com/forums/topic-tag/database/)
- [suggestions](https://helloacm.com/forums/topic-tag/suggestions/)
- [job opportunities](https://helloacm.com/forums/topic-tag/job-opportunities/)
- [forum](https://helloacm.com/forums/topic-tag/forum/)
- [posts](https://helloacm.com/forums/topic-tag/posts/)
- [contributor](https://helloacm.com/forums/topic-tag/contributor/)
- [plugin](https://helloacm.com/forums/topic-tag/plugin/)
- [adsense](https://helloacm.com/forums/topic-tag/adsense/)
- [adsense earning report](https://helloacm.com/forums/topic-tag/adsense-earning-report/)
- [interview](https://helloacm.com/forums/topic-tag/interview/)

Version History

Version 15/15/2026, 5:02:13 PMvalid
630167 bytes

Categories

blognewsecommercedocumentationentertainmenteducationtechnologybusinesshealthfinancetravelsportsgamingsocial

Visit Website

Explore the original website and see their AI training policy in action.

Visit helloacm.com

Content Types

articlespostspagesproductsapidocumentationtutorialsreviewscommentsforums

Recent Access

No recent access

API Access

Canonical URL:
https://llmscentral.com/helloacm.com/llms.txt
API Endpoint:
/api/llms?domain=helloacm.com