Переписать код с c++ на python

Решал задачу на c++, нужно переписать код на python. Вот сама задача: https://ipc.susu.ru/210-2.html?problem=1786 . Сам с этим как-то не могу справиться! Нужно переписать код на python, либо решить задачу на python другим способом. P.S. Можете пожалуйста оставлять комментарии в коде.

#define MAX 2000000000
#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;

int main()
{
    int n, c, k, a, b, res = 0;
    vector<int> pts;
    cin >> n >> c >> k;
    for (int i = 0; i < n; i++)/*Заношу в вектор число подходов, чтобы опредлить сколько нужно подходов для того чтоб стать победителем*/
    {
        cin >> a >> b;
        if (b == 0)
            pts.push_back(MAX * (a < k));
        else if (a >= k)
            pts.push_back(0);
        else
            pts.push_back(((k - a) + b - 1) / b);
    }
    sort(pts.begin(), pts.end()); 
    for (int i = 0; i < n; i++)/*Подсчет кол-во победителей*/
        if (c >= pts[i])
        {
            c -= pts[i];
            res++;
        }
        else break;
    cout << res;

}

Ответы (1 шт):

Автор решения: dIm0n
MAX, res = 2000000000, 0
n, c, k = int(input()), int(input()), int(input())
pts = []

for i in range(n):
  a, b = int(input()), int(input())

  if b == 0:
    pts.append(MAX * (a < k))
  elif a >= k:
    pts.append(0)
  else:
    pts.append(((k - a) + b - 1) // b)

pts.sort()

for i in range(n):
  if c >= pts[i]:
    c -= pts[i]
    res += 1
  else:
    break

print(res)
→ Ссылка