philschmid/DMath huggingface dataset:
Category: Arithmetic calculation

Question (EN): The younger brother is 28 centimeters (cm) shorter than Minkyung, and the father is 35 centimeters (cm) taller than Minkyung. If the father's height is 1 meter (m) 72 centimeters (cm), how tall is the younger brother in centimeters (cm)?
Question (KO): 동생의 키는 민경이보다 28센티미터(㎝) 작고, 아버지의 키는 민경이보다 35센티미터(㎝) 큽니다. 아버지의 키가 1미터(m) 72센티미터(㎝)라면, 동생의 키는 몇 센티미터(㎝)일까요?

Answer: 109

Solution (Python):
var_a = 1
var_b = 100
var_c = var_a * var_b
var_d = 72
var_e = var_c + var_d
var_f = 35
var_g = var_e - var_f
var_h = 28
var_i = var_g - var_h
print(int(var_i))
Category: Correspondence

Question (EN): For the natural number A, find all sums of A such that 3<2×A<19
Question (KO): 자연수 A에 대해 3<2×A<19를 만족하는 A의 모든 합을 구하시오

Answer: 44

Solution (Python):
var_a = '3<2×A<19'
var_b = 'A'
ans_dict = dict()
var_a = var_a.replace('×','*')
var_a = var_a.replace('x','*')
var_a = var_a.replace('÷','/')
variable_candi = set(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'])
for v in set(var_a):
    if v in variable_candi:
        ans_dict[v] = []
candidate_num = [i for i in range(51)]
candi = list(itertools.product(candidate_num, repeat=len(ans_dict)))
for c in candi:
    temp = var_a
    for i, (k, _) in enumerate(ans_dict.items()):
        temp = temp.replace(k, str(c[i]))
    term_list = []
    op_list = []
    temp_c = ''
    for tc in temp:
        if tc not in '+-*/=><().':
            temp_c += tc
        else:
            op_list.append(tc)
            term_list.append(temp_c)
            temp_c = ''
    term_list.append(temp_c)
    new_eq = ''
    for i in range(len(op_list)):
        if term_list[i] == '':
            new_eq += str(term_list[i])+op_list[i]
        else:
            new_eq += str(int(term_list[i]))+op_list[i]
    new_eq += str(int(term_list[-1]))
    new_eq=new_eq.replace('=', '==')
    new_eq=new_eq.replace('>==', '>=')
    new_eq=new_eq.replace('<==', '<=')
    eval_result = False
    try:
        if '=' in new_eq and '>' not in new_eq and '<' not in new_eq:
            new_eq=new_eq.replace('==','=')
            new_eq=new_eq.replace('>','')
            new_eq=new_eq.replace('<','')
            new_eq=new_eq.split('=')
            for i in range(len(new_eq)-1):
                eval_result = math.isclose(eval(new_eq[i]), eval(new_eq[i+1]))
                if not eval_result:
                    break
        else:
            eval_result = eval(new_eq)
    except:
        eval_result = False
        pass
    if eval_result:
        for i, (k, _) in enumerate(ans_dict.items()):
            ans_dict[k].append(int(c[i]))
list_a = list(set(ans_dict[var_b]))
list_a = [float(i) for i in list_a]
var_c = sum(list_a)
print(int(var_c))
Category: Possibility

Question (EN): Donghyun chooses three different number cards from 0 to 9 and uses them all to make a three-digit number. This time, he made the third smallest number where the tens digit of this number is 1. What is the sum of the hundreds digit and the ones digit?
Question (KO): 동현이는 0~9까지의 수가 적힌 숫자 카드 중 서로 다른 3장을 골라 모두 사용하여 세 자리 수를 만들고 있습니다. 이 때, 세 번째로 작은 수를 만들었습니다. 이 만든 수의 십의 자리는 1일 때 백의 자리 숫자와 일의 자리 숫자의 합은 얼마입니까?

Answer: 4

Solution (Python):
var_a = 0
var_b = 9
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d = 3
list_b = [str(i) for i in list_a]
list_b = list(itertools.permutations(list_b, var_d))
list_b = [''.join(num_list) for num_list in list_b]
list_b = [str_num for str_num in list_b if str_num[0] != '0']
list_b = [float(i) for i in list_b]
var_e = 3
list_c=list_b.copy()
list_c.sort()
var_f = list_c[var_e-1]
list_d = []
var_f = int(var_f)
while var_f//10 > 0:
    list_d.append(var_f%10)
    var_f = var_f//10
list_d.append(var_f%10)
list_d = list_d[::-1]
var_g = 2
var_h = list_d[var_g-1]
var_i = 3
var_j = list_d[var_i-1]
var_k = var_h + var_j
print(int(var_k))
Category: Arithmetic calculation

Question (EN): Mingyu bought 3 erasers for 350 won each and 2 pencils for 180 won each at the stationery store and paid 2,000 won. Find how much change Mingyu should receive.
Question (KO): 민규는 문구점에서 350원짜리 지우개 3개와 180원짜리 연필 2자루를 사고 2000원을 냈습니다. 민규가 받아야 할 거스름돈은 얼마인지 구해 보시오.

Answer: 590

Solution (Python):
var_a = 2000
var_b = 350
var_c = 3
var_d = var_b * var_c
var_e = 180
var_f = 2
var_g = var_e * var_f
var_h = var_d + var_g
var_i = var_a - var_h
print(int(var_i))
Category: Possibility

Question (EN): How many fractions of the same size as 7/8 have two-digit denominators?
Question (KO): 7/8 과 크기가 같은 분수 중에서 분모가 두 자리 수인 분수는 모두 몇 개입니까?

Answer: 11

Solution (Python):
var_a = 10
var_b = 99
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d = 8
list_b = []
var_d = int(var_d)
for i in list_a:
    i = int(i)
    if i % var_d == 0:
        list_b.append(i)
var_e = len(list_b)
print(int(var_e))
Category: Arithmetic calculation

Question (EN): How many two-digit numbers are both multiples of 3 and multiples of 5?
Question (KO): 두 자리 수 중 3의 배수이면서 5의 배수인 수는 모두 몇 개 입니까?

Answer: 6

Solution (Python):
var_a = 10
var_b = 99
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d = 3
list_b = []
var_d = int(var_d)
for i in list_a:
    i = int(i)
    if i % var_d == 0:
        list_b.append(i)
var_e = 5
list_c = []
var_e = int(var_e)
for i in list_b:
    i = int(i)
    if i % var_e == 0:
        list_c.append(i)
var_f = len(list_c)
print(int(var_f))
Category: Arithmetic calculation

Question (EN): 72 students in total are participating in after-school activities. Of these, one-fourth are taking the after-school English class, and one-third of the students taking the after-school English classes are 6th-grade students. How many 6th-grade students are taking the after-school English class?
Question (KO): 총 72명의 학생들이 방과후 활동에 참여하고 있습니다. 이 중 4분의 1은 방과후 영어 수업을 듣고, 방과후 영어 수업을 듣는 학생의 3분의 1은 6학년 학생들입니다. 6학년 학생들은 방과 후 영어를 몇 명이나 듣습니까?

Answer: 6

Solution (Python):
var_a = 72
var_b = 1
var_c = 4
var_d = var_b / var_c
var_e = var_a * var_d
var_f = 1
var_g = 3
var_h = var_f / var_g
var_i = var_e * var_h
print(int(var_i))
Category: Geometry

Question (EN): A square was created by arranging 12 coins of the same size regularly, horizontally and vertically, without any gaps. How many coins are placed around the perimeter?
Question (KO): 크기가 같은 동전을 빈틈없이 규칙적으로 가로와 세로 모두 12개씩 늘어놓아 정사각형을 만들었습니다. 둘레에 놓인 구슬의 개수는 몇 개입니까?

Answer: 44

Solution (Python):
var_a = 12
var_b = 2
var_c = var_a - var_b
var_d = 4
var_e = var_c * var_d
var_f = 4
var_g = var_e + var_f
print(int(var_g))
Category: Arithmetic calculation

Question (EN): Yoongi has 5 dogs and 2 cats, respectively. How many dogs and cats do Yoongi have?
Question (KO): 윤기는 강아지와 고양이를 각각 5마리, 2마리 키우고 있습니다. 윤기가 키우는 강아지와 고양이는 몇 마리 인가요?

Answer: 7

Solution (Python):
var_a = 5
var_b = 2
var_c = var_a + var_b
print(int(var_c))
Category: Correspondence

Question (EN): There is a four-digit number 7AA1 that is divisible by 9 without any remainder. Find the possible four digit number.
Question (KO): 9로 나누어떨어지는 네 자리 수 7AA1이 있습니다. 가능한 네 자리 수를 구하시오

Answer: 7551

Solution (Python):
var_a = '7AA1'
ans_dict = dict()
var_a = str(var_a)
list_a = []
variable_candi = set(['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'])
for v in set(var_a):
    if v in variable_candi:
        ans_dict[v] = 0
candi = list(itertools.product('0123456789', repeat=len(ans_dict)))
for c in candi:
    temp = var_a
    for i, (k, _) in enumerate(ans_dict.items()):
        temp = temp.replace(k, str(c[i]))
    if len(var_a) == len(str(int(temp))):
        new_elem = int(temp)
        list_a.append(new_elem)
var_b = 9
list_b = []
var_b = int(var_b)
for i in list_a:
    i = int(i)
    if i % var_b == 0:
        list_b.append(i)
var_c=""
for i in list_b:
    i = str(i)
    var_c = var_c + i
print(int(var_c))
Category: Geometry

Question (EN): You are trying to wrap a cube-shaped side dish container. In order to wrap this side dish container without overlapping, wrapping paper with a width of 600 is required. Find the volume of this side dish container.
Question (KO): 정육면체의 반찬통을 포장하려고 합니다. 이 반찬통을 겹치지 않고 포장하기 위해서는 넓이가 600인 포장지가 필요합니다. 이 반찬통의 부피를 구하시오.

Answer: 1000

Solution (Python):
var_a = 600
var_b = 6
var_c = var_a / var_b
var_d = 0.5
var_e = var_c ** var_d
var_f = 3
var_g = var_e ** var_f
print(int(var_g))
Category: Arithmetic calculation

Question (EN): How many times does the number 8 appear in the numbers 10 through 99?
Question (KO): 10부터 99까지 수를 쓸 때, 숫자 8은 모두 몇 번 등장합니까?

Answer: 19

Solution (Python):
var_a = 10
var_b = 99
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d=""
for i in list_a:
    i = str(i)
    var_d = var_d + i
list_b = []
var_d = int(var_d)
while var_d//10 > 0:
    list_b.append(var_d%10)
    var_d = var_d//10
list_b.append(var_d%10)
list_b = list_b[::-1]
var_e = 8
var_f = 0
var_e = int(var_e)
for i in list_b:
    i = int(i)
    if i == var_e:
        var_f = var_f + 1
print(int(var_f))
Category: Correspondence

Question (EN): If you fill the pool full of water, it will take 8050 liters (L). If the currently empty swimming pool is filled with 80.5 liters (L) of water, find how full the pool is.
Question (KO): 수영장에 물을 꽉 채우면 8050리터(L)가 들어간다. 현재 빈 수영장에 80.5리터(L)의 물을 채웠으면 수영장의 얼만큼 물이 찼는지 구하시오.

Answer: 0.01

Solution (Python):
var_a = 80.5
var_b = 8050
var_c = var_a / var_b
print('{:.2f}'.format(round(var_c+1e-10,2)))
Category: Comparison

Question (EN): Multiples of 4 that are greater than 0 and less than 100 are written sequentially. How many natural numbers are between the 5th number and the 8th number?
Question (KO): 0보다 크고 100보다 작은 4의 배수를 차례대로 썼습니다. 왼쪽에서 5번째 수와 오른쪽에서 8번째 수 사이에 있는 수는 모두 몇 개입니까?

Answer: 11

Solution (Python):
var_a = 0
var_b = 1
var_c = var_a + var_b
var_d = 100
var_e = 1
var_f = var_d - var_e
var_g = 1
list_a = [i for i in range(var_c, var_f + 1, var_g)]
var_h = 4
list_b = []
var_h = int(var_h)
for i in list_a:
    i = int(i)
    if i % var_h == 0:
        list_b.append(i)
var_i = 5
list_c=list_b.copy()
list_c.sort()
var_j = list_c[var_i-1]
var_k = 8
list_d=list_b.copy()
list_d.sort()
var_l = list_d[-var_k]
list_e = []
for i in list_b:
    if i < var_l:
        list_e.append(i)
list_f = []
for i in list_e:
    if i > var_j:
        list_f.append(i)
var_m = len(list_f)
print(int(var_m))
Category: Arithmetic calculation

Question (EN): How many five-digit numbers are common multiples of 2, 3, 8, and 9?
Question (KO): 다섯 자리 수 중 2, 3, 8, 9의 공배수인 수는 모두 몇 개 입니까?

Answer: 1250

Solution (Python):
var_a = 10000
var_b = 99999
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d = 2
list_b = []
var_d = int(var_d)
for i in list_a:
    i = int(i)
    if i % var_d == 0:
        list_b.append(i)
var_e = 3
list_c = []
var_e = int(var_e)
for i in list_b:
    i = int(i)
    if i % var_e == 0:
        list_c.append(i)
var_f = 8
list_d = []
var_f = int(var_f)
for i in list_c:
    i = int(i)
    if i % var_f == 0:
        list_d.append(i)
var_g = 9
list_e = []
var_g = int(var_g)
for i in list_d:
    i = int(i)
    if i % var_g == 0:
        list_e.append(i)
var_h = len(list_e)
print(int(var_h))
Category: Arithmetic calculation

Question (EN): The marbles were divided into 8 bags. If six of these bags held 6 marbles, but the other two bags each held 7 marbles, what would be a total number of marbles?
Question (KO): 구슬을 8개의 자루에 나누어 담았습니다. 그중 6개의 자루에는 각각 6개를 담았고, 나머지 2자루에는 각각 7개를 담았습니다. 구슬은 모두 몇 개입니까?

Answer: 50

Solution (Python):
var_a = 6
var_b = 6
var_c = var_a * var_b
var_d = 2
var_e = 7
var_f = var_d * var_e
var_g = var_c + var_f
print(int(var_g))
Category: Arithmetic calculation

Question (EN): Yeongchan's group consists of 7 people. One person can fold two paper cranes in one minute. How many minutes will it take Yeongchan's group to fold 182 paper cranes?
Question (KO): 영찬이네 모둠은 7 명입니다. 한 사람이 종이학을 1 분에 2 마리씩 접을 수 있습니다. 영찬이네 모둠이 종이학 182 마리를 접으려면 몇 분이 걸립니까?

Answer: 13

Solution (Python):
var_a = 182
var_b = 7
var_c = 2
var_d = var_b * var_c
var_e = var_a / var_d
print(int(var_e))
Category: Possibility

Question (EN): Father, Mother, Minji and younger brother went to take pictures. Mother says she will take pictures with the younger brother on her back. How many different ways are there to take pictures side by side?
Question (KO): 아버지, 어머니, 민지 그리고 동생이 사진을 찍으러 갔습니다. 어머니는 동생을 업고 찍으시겠다고 합니다. 서로 다르게 나란히 서서 찍는 방법은 모두 몇 가지입니까?

Answer: 6

Solution (Python):
var_a = 'Father'
var_b = 'Mother'
var_c = 'Minji'
list_a= []
if "/" in str(var_c):
    var_c = eval(str(var_c))
list_a.append(var_c)
if "/" in str(var_b):
    var_b = eval(str(var_b))
list_a.append(var_b)
if "/" in str(var_a):
    var_a = eval(str(var_a))
list_a.append(var_a)
list_a.reverse()
var_d = len(list_a)
var_e = len(list_a)
var_f = 1
var_d = int(var_d)
var_e = int(var_e)
for i, elem in enumerate(range(var_e)):
    var_f = var_f * (var_d-i)
print(int(var_f))
Category: Arithmetic calculation

Question (EN): Of the 36 students, 24 fewer students wear glasses than students who do not wear glasses. How many students wear glasses?
Question (KO): 학생 36명 중 안경을 낀 학생은 안경을 끼지 않은 학생보다 24명이 더 적습니다. 안경을 낀 학생은 몇 명입니까?

Answer: 6

Solution (Python):
var_a = 36
var_b = 24
var_c = var_a - var_b
var_d = 2
var_e = var_c / var_d
print(int(var_e))
Category: Arithmetic calculation

Question (EN): There are four numbers 53, 98, 69, and 84. What is the difference between the largest number and the smallest number?
Question (KO): 4개의 수 53, 98, 69, 84가 있습니다. 그중에서 가장 큰 수와 가장 작은 수의 차는 얼마입니까?

Answer: 45

Solution (Python):
var_a = 53
var_b = 98
var_c = 69
var_d = 84
list_a= []
if "/" in str(var_d):
    var_d = eval(str(var_d))
list_a.append(var_d)
if "/" in str(var_c):
    var_c = eval(str(var_c))
list_a.append(var_c)
if "/" in str(var_b):
    var_b = eval(str(var_b))
list_a.append(var_b)
if "/" in str(var_a):
    var_a = eval(str(var_a))
list_a.append(var_a)
list_a.reverse()
var_e = 1
list_b=list_a.copy()
list_b.sort()
var_f = list_b[-var_e]
var_g = 1
list_c=list_a.copy()
list_c.sort()
var_h = list_c[var_g-1]
var_i = var_f - var_h
print(int(var_i))
Category: Correspondence

Question (EN): The value of the multiplication of the six-digit number ABCDEF and 5 is 665655. Find the sum of A, B, C, D, E, and F.
Question (KO): 여섯 자리 수 ABCDEF와 5의 곱은 665655입니다. A, B, C, D, E, F의 합을 구하시오.

Answer: 12

Solution (Python):
var_a = 665655
var_b = 5
var_c = var_a / var_b
list_a = []
var_c = int(var_c)
while var_c//10 > 0:
    list_a.append(var_c%10)
    var_c = var_c//10
list_a.append(var_c%10)
list_a = list_a[::-1]
list_a = [float(i) for i in list_a]
var_d = sum(list_a)
print(int(var_d))
Category: Possibility

Question (EN): You can only get to home from school by bus or subway. There are a total of 7 ways to get there, and 4 for them is to take the bus. How many ways are there to take subway?
Question (KO): 학교에서 집까지는 버스 또는 지하철을 타야만 갈 수 있다. 총 7가지 방법으로 갈 수 있으며, 버스로 가는 방법은 4가지이다. 지하철을 이용하여 가는 방법은 몇가지인가?

Answer: 3

Solution (Python):
var_a = 7
var_b = 4
var_c = var_a - var_b
print(int(var_c))
Category: Correspondence

Question (EN): Among 16, 18, 20, and 25, find the number that is divisible by 2 and 5 and is greater than 17.
Question (KO): 16, 18, 20, 25 중 2와 5로 나누어 떨어지면서 17보다 큰 수를 구하시오.

Answer: 20

Solution (Python):
var_a = 16
var_b = 18
var_c = 20
var_d = 25
list_a= []
if "/" in str(var_d):
    var_d = eval(str(var_d))
list_a.append(var_d)
if "/" in str(var_c):
    var_c = eval(str(var_c))
list_a.append(var_c)
if "/" in str(var_b):
    var_b = eval(str(var_b))
list_a.append(var_b)
if "/" in str(var_a):
    var_a = eval(str(var_a))
list_a.append(var_a)
list_a.reverse()
var_e = 17
list_b = []
for i in list_a:
    if i > var_e:
        list_b.append(i)
var_f = 2
list_c = []
var_f = int(var_f)
for i in list_b:
    i = int(i)
    if i % var_f == 0:
        list_c.append(i)
var_g = 5
list_d = []
var_g = int(var_g)
for i in list_c:
    i = int(i)
    if i % var_g == 0:
        list_d.append(i)
var_h = 1
var_i = list_d[var_h-1]
print(int(var_i))
Category: Geometry

Question (EN): What is the volume of a cube with a side of an area of 64 square centimeters (cm2) in cubic centimeters (cm3)?
Question (KO): 한 면의 넓이가 64제곱센티미터(㎠)인 정육면체의 부피는 몇 세제곱센티미터(㎤)인가요?

Answer: 512

Solution (Python):
var_a = 64
var_b = 0.5
var_c = var_a ** var_b
var_d = 3
var_e = var_c ** var_d
print(int(var_e))
Category: Correspondence

Question (EN): When you divide a number by 3, you get 3. Find this number. 
Question (KO): 어떤 수를 3으로 나누었더니 3이 되었습니다. 어떤 수를 구하시오.

Answer: 9

Solution (Python):
var_a = 3
var_b = 3
var_c = var_a * var_b
print(int(var_c))
Category: Possibility

Question (EN): How many integers less than 12 are multiples of 3?
Question (KO): 12보다 작은 정수 중에 3의 배수의 개수는 얼마입니까?

Answer: 3

Solution (Python):
var_a = 1
var_b = 11
var_c = 1
list_a = [i for i in range(var_a, var_b + 1, var_c)]
var_d = 3
list_b = []
var_d = int(var_d)
for i in list_a:
    i = int(i)
    if i % var_d == 0:
        list_b.append(i)
var_e = len(list_b)
print(int(var_e))
Category: Comparison

Question (EN): Taehyung, Namjoon, and Jimin bought apples at the fruit shop. If Taehyung bought more apples than Namjoon and Jimin bought more apples than Taehyung, who bought the most apples?
Question (KO): 과일가게에서 태형, 남준, 지민이가 사과를 샀습니다. 태형이는 남준이보다 사과를 많이 샀고 지민이는 태형이보다 사과를 많이 샀다면 사과를 가장 많이 산 학생은 누구인가요?

Answer: Jimin

Solution (Python):
var_a = 'Taehyung'
var_b = 'Namjoon'
var_c = 'Jimin'
list_a= []
if "/" in str(var_c):
    var_c = eval(str(var_c))
list_a.append(var_c)
if "/" in str(var_b):
    var_b = eval(str(var_b))
list_a.append(var_b)
if "/" in str(var_a):
    var_a = eval(str(var_a))
list_a.append(var_a)
list_a.reverse()
var_d = 'Taehyung'
var_e = 'Namjoon'
var_f = '>'
var_g = 'Jimin'
var_h = 'Taehyung'
var_i = '>'
list_b= []
if "/" in str(var_i):
    var_i = eval(str(var_i))
list_b.append(var_i)
if "/" in str(var_h):
    var_h = eval(str(var_h))
list_b.append(var_h)
if "/" in str(var_g):
    var_g = eval(str(var_g))
list_b.append(var_g)
if "/" in str(var_f):
    var_f = eval(str(var_f))
list_b.append(var_f)
if "/" in str(var_e):
    var_e = eval(str(var_e))
list_b.append(var_e)
if "/" in str(var_d):
    var_d = eval(str(var_d))
list_b.append(var_d)
list_b.reverse()
global item_name_index_dict
items_name_list = list_a.copy()
conditions = []
condition_list = list_b.copy()
temp_stack = []
for index_, cond_ in enumerate(map(str, condition_list)):
    if cond_ in ("<", ">", "="):
        operand_right = temp_stack.pop()
        operand_left = temp_stack.pop()
        if cond_ == "=":
            cond_ = "=="
        conditions.append(f"{operand_left} {cond_} {operand_right}")
    else:
        if not cond_.isdigit():
            cond_ = "{" + cond_ + "}"
        temp_stack.append(cond_)
item_name_index_dict = {}
for perm in itertools.permutations(range(1, len(items_name_list) + 1)):
    item_name_index_dict = dict(zip(items_name_list, perm))
    formatted_conditions = \
        [condition.format_map(item_name_index_dict) for condition in conditions]
    if all(map(eval, formatted_conditions)):
        break
list_c = list(item_name_index_dict.keys())
list_c.sort(key=item_name_index_dict.get, reverse=True)
var_j = 1
var_k = list_c[var_j-1]
print(var_k)
Category: Arithmetic calculation

Question (EN): The rental fee for a comic book is 4,000 won for 30 minutes. 6 students want to borrow 4 books in total for 3 hours. If all of these students are willing to pay the same amount, find the amount of money that a student should pay.
Question (KO): 만화책 한 권의 대여료는 30분에 4000원입니다. 6명의 학생이 책 4권을 3시간동안 빌리려고 합니다. 이 학생들이 모두 같은 돈을 내려고 할 때, 한 학생이 내야할 돈을 구하세요.

Answer: 16000

Solution (Python):
var_a = 3
var_b = 60
var_c = var_a * var_b
var_d = 30
var_e = var_c / var_d
var_f = 4000
var_g = var_e * var_f
var_h = 4
var_i = var_g * var_h
var_j = 6
var_k = var_i / var_j
print(int(var_k))
Category: Geometry

Question (EN): The sum of 4 sides of a rectangle equals 50 centimeters (cm). If the length of this rectangle is 13 centimeters (cm), what is the length of its width in centimeters (cm)?
Question (KO): 4변의 길이의 합이 50센티미터(㎝)인 직사각형이 있습니다. 이 직사각형의 세로의 길이가 13센티미터(㎝)일 때, 가로의 길이는 몇 센티미터(㎝)입니까?

Answer: 12

Solution (Python):
var_a = 50
var_b = 2
var_c = var_a / var_b
var_d = 13
var_e = var_c - var_d
print(int(var_e))
Category: Correspondence

Question (EN): There are some numbers smaller than 20 that are not divisible by 2. Which number is it among 16, 18, 19, and 21?
Question (KO): 20보다 작지만 2로 나뉘어 떨어지지 않는 어떤 수가 있습니다. 16, 18, 19, 21 중 어떤 수는 무엇입니까?

Answer: 19

Solution (Python):
var_a = 16
var_b = 18
var_c = 19
var_d = 21
list_a= []
if "/" in str(var_d):
    var_d = eval(str(var_d))
list_a.append(var_d)
if "/" in str(var_c):
    var_c = eval(str(var_c))
list_a.append(var_c)
if "/" in str(var_b):
    var_b = eval(str(var_b))
list_a.append(var_b)
if "/" in str(var_a):
    var_a = eval(str(var_a))
list_a.append(var_a)
list_a.reverse()
var_e = 2
list_b = []
var_e = int(var_e)
for i in list_a:
    i = int(i)
    if i % var_e == 0:
        list_b.append(i)
list_c = list(set(list_a) - set(list_b))
var_f = 20
list_d = []
for i in list_c:
    if i < var_f:
        list_d.append(i)
var_g = 1
var_h = list_d[var_g-1]
print(int(var_h))
Category: Arithmetic calculation

Question (EN): Jeongyeon and Joohyun have their heights measured. Jeongyeon's height is 1.06 times that of Joohyun, and Joohyun's height is 134.5 cm (cm). How tall is Jeongyeon?
Question (KO): 정연이와 주현이가 키를 쟀습니다. 정연이의 키는 주현이의 키의 1.06배이고 주현이는 134.5센티미터(㎝)입니다. 정연이의 키를 구하세요.

Answer: 142.57

Solution (Python):
var_a = 134.5
var_b = 1.06
var_c = var_a * var_b
print('{:.2f}'.format(round(var_c+1e-10,2)))
Category: Correspondence

Question (EN): When you round a 3-digit decimal to one decimal place, you get 3.5. Find the sum of the largest and smallest of these decimal numbers, including the decimal point.
Question (KO): 어떤 소수점 아래 세 자리 소수를 소수 2번째 자리에서 반올림하였더니 3.5가 되었습니다. 이러한 소수 중에서 가장 큰 수와 가장 작은 수의 합을 소수점을 포함하여 답을 구하시오.

Answer: 6.99

Solution (Python):
var_a = 3.54
var_b = 3.45
var_c = var_a + var_b
print('{:.2f}'.format(round(var_c+1e-10,2)))
Category: Arithmetic calculation

Question (EN): If you give 6 snacks to each of the 18 students, it's left, and if you give 7 snacks to each student, it's not enough. What is the maximum number of snacks?
Question (KO): 학생 18명에게 간식을 6개씩 주면 남고, 7개씩 주면 모자란다고 할 때 간식의 최대 개수는 몇 개입니까?

Answer: 125

Solution (Python):
var_a = 18
var_b = 7
var_c = var_a * var_b
var_d = 1
var_e = var_c - var_d
print(int(var_e))
Category: Possibility

Question (EN): Find the difference between the largest number and the third smallest number that can be made by changing the order of the digits in each place of 168.
Question (KO): 168의 각 자리에 있는 숫자의 순서를 바꾸어 다른 수를 만들 때, 만들 수 있는 가장 큰 수와 세 번째로 작은 수의 차이를 구하시오.

Answer: 243

Solution (Python):
var_a = 168
list_a = []
var_a = int(var_a)
while var_a//10 > 0:
    list_a.append(var_a%10)
    var_a = var_a//10
list_a.append(var_a%10)
list_a = list_a[::-1]
var_b = 3
list_b = [str(i) for i in list_a]
list_b = list(itertools.permutations(list_b, var_b))
list_b = [''.join(num_list) for num_list in list_b]
list_b = [str_num for str_num in list_b if str_num[0] != '0']
list_b = [float(i) for i in list_b]
var_c = 1
list_c=list_b.copy()
list_c.sort()
var_d = list_c[-var_c]
var_e = 3
list_d=list_b.copy()
list_d.sort()
var_f = list_d[var_e-1]
var_g = var_d - var_f
print(int(var_g))
Category: Correspondence

Question (EN): It is said that a number plus 72 is equal to twice the number divided by 2/3. Find the number.
Question (KO): 어떤 수에 72를 더한 값이 어떤 수에 2/3를 나눈 값에 2배와 같다고 한다. 어떤 수를 구하여라.

Answer: 36

Solution (Python):
var_a = 72
var_b = 2
var_c = 1
var_d = 0.6666666666666666
var_e = var_c / var_d
var_f = var_b * var_e
var_g = 1
var_h = var_f - var_g
var_i = var_a / var_h
print(int(var_i))