EIU Programming Contest - Practice

A Plus B

Nộp bài
Time limit: 2.0 / Memory limit: 256M

Point: 100

Just read only two integer numbers and print only one sum of those two numbers. Don't read another one!

Main Input

9 
7

Main Output

16

Common divisor

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

A positive integer ~p~ is called a common divisor of integers ~n~ and ~m~ if both ~n~ and ~m~ are divisible by ~p~.

Write a program that takes two positive integers ~n~ and ~m~ (where ~n,m≤10^{12}~) as input.

Output all common divisors of ~n~ and ~m~.

Input:

  • Two positive integers ~n~ and ~m~.

Output:

  • Print all their common divisors.

Sample Input

12 18 

Sample Output

1 2 3 6

Phân Công Công Việc

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 100

Bài toán phân công công việc là một bài toán rất phổ biến trong cuộc sống. Xét một dạng cơ bản như sau: có ~n~ người và ~m~ công việc, mỗi người có năng suất làm việc như nhau và công việc thứ ~i~ cần ~a_i~ thời gian để một người thực hiện, mỗi công việc chỉ giao cho ~1~ người. Một trong những thuật toán đơn giản để thực hiện việc phân công này là:

  • B1: Sắp xếp các công việc theo thời gian hoàn thành.

  • B2: phân công việc có thời gian thực hiện lớn nhất chưa giao cho người làm ít thời gian nhất (tổng thời gian các công việc được giao là nhỏ nhất).

  • B3: nếu mọi công việc được giao thì kết thúc, ngược lại quay lại bước 2.

Input

  • Dòng đầu tiên là 2 số nguyên n, m (n, m <= ~10^{5}~).

  • Dòng thứ 2 là m số nguyên dương không vượt quá ~10^{5}~ là thời gian thực hiện của m công việc tương ứng.

Output

  • 1 dòng gồm n số nguyên lần lượt là thời gian làm việc của n người.

Lưu ý: ở bước 2, nếu có nhiều hơn 1 người có thời gian làm việc ít nhất thì chọn người có thứ tự nhỏ nhất trong số đó.

Sample Input:

3 5
2 5 6 4 7

Sample Output:

7 8 9

Sample Input:

3 5
2 6 6 3 7

Sample Output:

7 9 8

Number of pairs

Nộp bài
Time limit: 1.0 / Memory limit: 256M

Point: 200

Given ~N~ integers, denoted by numbers and an integer ~X~ . Count the number of pair indices ~(i,j)~ that ~i<j~ and ~A_j-A_i=X~ .</p>

Input

  • The first line contains two integers ~N~, ~X~ ~(1≤N≤10^{5},-10^{9}≤X≤10^{9})~.

  • The second line contains ~N~ integers (~-10^{9}≤A_i ≤ 10^{9}~).

Output

  • The number of pair indices.

Sample Input

6 1
1 6 4 2 4 5

Sample Output

3