CodeForces 876B Divisiblity of Differences(思维 + 数学)
来源:互联网 发布:广州旅拍工作室 知乎 编辑:程序博客网 时间:2024/05/17 04:56
题目:点击打开链接
题意:从n个数中找到k个数,满足任意两者的差能够除尽m。
思路:设两个数a、b,若(a - b)% m = 0,则a可写成k1*m + c,b可写成k2*m + c,所以根据对m取余的结果把n个数分类即可。
// Code Forces 876B Divisiblity of Differences 运行/限制:61ms/1000ms#include <cstdio>#include <cstring>#include <iostream>#include <vector>using namespace std;vector<int> v[100005];int main(){int n, k, m, num, flag;while (scanf("%d%d%d", &n, &k, &m) != EOF) {for (int i = 0; i < n; i++) {scanf("%d", &num);v[num % m].push_back(num);}flag = 1;for (int j = 0; j < m && flag; j++) {if (v[j].size() >= k) {flag = 0;printf("Yes\n");for (int t = 0; t < k; t++) {printf("%d%c", v[j][t], t == k - 1 ? '\n' : ' ');}}}if (flag) printf("No\n");for (int j = 0; j < m; j++) {v[j].clear();}} return 0;}
阅读全文
1 0
- CodeForces 876B Divisiblity of Differences(思维 + 数学)
- Codeforces 876 B Divisiblity of Differences 基础数学
- Codeforces 876B. Divisiblity of Differences
- Codeforces 876 B Divisiblity of Differences
- CodeForces 876B Divisiblity of Differences
- Codeforces 876B Divisiblity of Differences
- codeforces 876B Divisiblity of Differences
- Codeforces 876B Divisiblity of Differences 题解
- CodeForces-876B Divisiblity of Differences
- Codeforces-876B-Divisiblity of Differences(取模)
- Codeforces Round #441 B.Divisiblity of Differences
- codeforces round #441 B. Divisiblity of Differences
- Codeforces Round #441 B. Divisiblity of Differences
- Codeforces Round #441 B. Divisiblity of Differences
- - Divisiblity of Differences CodeForces
- Codeforces Round #441 Div 2 B. Divisiblity of Differences
- Codeforces Round #441 div2 B. Divisiblity of Differences
- Codeforces Round #441 (Div. 2)B. Divisiblity of Differences(哈希的运用)
- Git使用中的两三事
- 分治算法——假硬币寻找,硬币找零,众数问题
- 深入理解Java面向对象三大特性 封装 继承 多态
- Python-可变对象和不可变对象
- 存储器层次结构4
- CodeForces 876B Divisiblity of Differences(思维 + 数学)
- linux安装meven
- win7(32位)安装ubuntu(64位)双系统(亲测成功)
- libsvm在linux上面的安装,安装这种so库很困难
- MarkDown
- .net实现工作日的计算
- 单调栈(单调队列的孪生兄弟?)
- booth算法计算补码乘法
- Java基础知识02-流程控制-for