Сандардың қосындысы
Шешімді жөнелту
Ұпайлар:
100 (partial)
Уақыт шектеуі:
1.0s
Жад шектеуі:
256M
Author:
Problem type
Рұқсат етілген тілдер
Assembly, Awk, Brain****, C, C++, Java, Pascal, Perl, Python, Sed, Text
Сізге \(n\) және \(m\) сандары берілген. \(m\) модулі бойынша \(1\)-ден \(n\)-ге дейінгі сандардың қосындысын табыңыз.
Енгізу
Бірінші жолда \(n\) және \(m\) екі бүтін сандар бар. (\(m \le 10^{18}\), \(n + 1 < m\))
Шығару
Есептің жаубын шығарыңыз.
Бағалау жүйесі
Бұл есеп 4 топ тұрады:
(\(m \le 2000\), \(n + 1 < m\)) \(10\) ұпаймен бағаланады.
(\(m \le 10^5\), \(n + 1 < m\)) \(20\) ұпаймен бағаланады.
(\(m \le 10^9\), \(n + 1 < m\)) \(30\) ұпаймен бағаланады.
(\(m \le 10^{18}\), \(n + 1 < m\)) \(40\) ұпаймен бағаланады.
Мысалдар
Енгізу 1
3 100
Жауап 1
6
Пікірлер
n=int(input()) m=int(input()) k=0 for i in range(1,n+1): k += i n=k % m print(n)
n=int(input()) m=int(input()) k=0 for i in range(1,n+1): k += i n=k % m print(n)
def range_sum_mod(a, b, m): total = (a + b) * (b - a + 1) // 2 return total % m