본문 바로가기

Programming/Project Euler

(39)
[C/C++] Project Euler #24 Lexicographic Permutations The problem in Project Euler #24 is to determine the millionth lexicographic permutation of the digits 0 through 9. Understanding the Method with Base SystemsHow do we calculate a number in a specific base system?For instance, to convert 723 to base 8:We repeatedly divide the number and record the remainders. Recalling middle school mathematics, this calculation is performed as follows:\( 723 \d..
[C/C++] Project Euler #23 - Non-Abundant Sums Project Euler #23 - Non-Abundant Sums asks the following:A number is classified as either a “Deficient number,” a “Perfect number,” or an “Abundant number” based on the sum of its proper divisors. If the sum of the proper divisors of a number is less than the number itself, it is classified as deficient. If the sum equals the number, it is called perfect. If the sum is greater than the number, i..
[C/C++] Project Euler #22 Names Scores The problem requires calculating the total of all name scores in a given text file containing names. The steps to solve the problem are:1. Parse the input file: Read a file that contains a single line of comma-separated names, each enclosed in double quotes.2. Sort the names alphabetically: Sort the list of names in ascending order.3. Compute name scores:• Assign a score to each name based on th..
[C/C++] Project Euler #21 Amicable Numbers This problem, while not at the level of a Millennium Problem, belongs to the realm of long-standing unsolved mathematical challenges, similar to the proof that no odd perfect number exists. Many people might already be familiar with the concept of a perfect number. A perfect number is defined as a number that equals the sum of its proper divisors (excluding itself). Examples include 6 and 28, wh..
[C/C++] Project Euler #20 Factorial Digit Sum The Factorial Digit Sum problem asks you to calculate the factorial of a given number and then compute the sum of all the digits in the resulting number. For example, 10! (10 factorial) equals \(10 \times 9 \times 8 \times \cdots \times 1 = 3,628,800,\) and the sum of its digits is \(3 + 6 + 2 + 8 + 8 + 0 + 0 = 27\). The problem specifically challenges you to find the sum of the digits of 100!. ..
[C/C++] Project Euler #19 Counting Sundays I believe this problem is designed to test whether you can correctly identify leap years.In C/C++, you can easily solve this problem using the `mktime()` function in the `time.h` header file. However, I tried to find a slightly different approach. (When using the `mktime()` function, I wonder if leap seconds are also calculated. The day of the week for 0:00:00 on the 1st day of the month in year..
[C/C++] Project Euler #18 Maximum Path Sum I(Dynamic Programming) This program seemed interesting to me personally.Problem 18 of Project Euler is about finding the path from the top to the bottom in a triangle of numbers that gives the maximum sum.Starting from the top number in the given triangle, you move downwards by selecting one of the two adjacent numbers. The goal is to find the path that gives the maximum sum of the numbers you choose along the way.The..
[C/C++] Project Euler #17 Number Letter Counts(implementation) Project Euler Problem 17 asks you to find the total number of letters used when writing out the numbers from 1 to 1000 in English words.For example, the number 342 is written as "three hundred and forty-two" and 115 as "one hundred and fifteen". Spaces and hyphens are not included in the letter count.The problem is to determine the total number of letters used when writing out all the numbers fr..
[C/C++] Project Euler #16 Power Digit Sum(BigInteger) The program essentially revolves around whether you can use a Big Integer implementation or not.Many programming languages natively support Big Integer types, which greatly influences the implementation difficulty depending on the language.The task is straightforward: compute \(2^{1000}\), and then sum all the digits of the resulting number.For instance, if you use Python, this problem can be so..
[C/C++] Project Euler #15 Counting fractions(Combination) This problem is about calculating paths in a grid. Here is the explanation and requirements:Problem Statement:Given a two-dimensional grid, you need to calculate the number of distinct paths from the top-left corner to the bottom-right corner. The movement is restricted to only rightward or downward directions. The size of the grid is  \(n \times n\) , and the goal is to compute the total number..