0.Chia Team
Submit solution
Points:
2 (partial)
Time limit:
1.0s
Memory limit:
98M
Author:
Problem type
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Bài toán rất đơn giản: Có n thí sinh từ mọi miền tổ quốc cùng thi đỗ vào UTC trong kì thi tuyển sinh Đại học vừa qua. Nhà trường sẽ chia các bạn thí sinh vào m lớp học với quy định mỗi lớp có ít nhất 1 sinh viên. Sau khi chia lớp xong, từng cặp sinh viên trong cùng một lớp sẽ trở thành bạn của nhau. Nhiệm vụ của bạn là viết chương trình tính toán xem số lượng tối thiểu và số lượng tối đa nhất có thể của số lượng cặp bạn có thể hình thành sau khi chia lớp.
Input:
- Dòng duy nhất gồm 2 số nguyên \(n,m ( 1 <= m <= n <= 10^9)\) - Tương ứng là số lượng các thí sinh đỗ và số lượng Lớp học dự định sẽ chia.
Output:
- Dòng duy nhất gồm 2 số \(a\) và \(b\). Tương ứng là số lượng tối thiểu và số lượng tối đa nhất có thể cần tìm.
Example:
Input:
5 1
Output:
10 10
Comments
include<bits/stdc++.h>
define ll long long
using namespace std;
ll db(ll n){ return n*(n-1)/2; }
int main(){ ll n,m; cin >>n>>m; if(m==1) cout <<db(n)<<" "<<db(n); else{ ll d=n/m; ll l=n%m; ll e=db(d)(m-l)+db(d+1)l; ll f=db(n-m+1); cout <<e<<" "<<f;
}
}
10 là như thế này :
Đều chạy trên cùng một server ở đây, chậm là do cin, cout chậm hơn scanf và printf bạn nên tra google về "fast IO in C++" để biết cách chạy cin và cout vẫn nhanh
Khi viết trình bày code bạn đưa vào trong thẻ thêm 3 dấu ` vào dòng đầu và cuối code như mình ví dụ dưới đây
Vâng ạ, em sửa lại comment r ạ :3 !
cho em xin hết test cũng được ạ ;)
Em thấy các học sinh giữa các lớp có thể đổi cho nhau
VD: 3 em tên 1 2 3 chia vào 2 lớp.
Cách cách chia:
1 2 lớp thứ nhất 3 lớp thứ hai.
1 3 lớp thứ nhất 2 lớp thứ hai.
2 3 lớp thứ nhất 1 lớp thứ hai.
Coi như lớp thứ nhất và lớp thứ hai là như nhau thì chia đc 3 cách.
Theo bộ test thì chỉ có 1 cách duy nhất tức vai trò của 3 học sinh 1 2 3 khi chia lớp là như nhau ,nhưng khi chia vào từng lớp thì vai trò lại khác nhau.
Ai có thể giải thích chỗ này cho em đc ko ạ
ai giải thích cho mình tại sao 10 10 với
ad cho em hỏi cái chia lớp là mình thích chia như nào cũng đc ạ miễn sao mỗi lớp có ít nhất một học sinh hay là chia học sinh theo trung bình học sinh từng lớp
nam_qc_54 thích chia sao cũng đk bạn ah. miễn là mỗi lớp có ít nhất 1 học sinh.