CodeForces 289B--中位数
来源:互联网 发布:智能问答可编辑软件 编辑:程序博客网 时间:2024/05/01 22:44
题意:
一个n * m的矩阵,将该矩阵的元素经过加或者减一个固定的数字 d,使得该矩阵的所有元素全部相等,问运算的最小步骤?若不能做到
则输出-1。
输入:
2 2 22 46 8
1 2 76 7
输出:
4
-1
分析:
将矩阵的所有元素全部排序,找到中位数,将所有的数字向中位数靠拢,如果各元素对d的取余不相等,那么输出-1.当时做的时候,
因为-1的条件没找对,错了好几次。
代码:
#include <bits/stdc++.h>using namespace std;int main(){ int n,m,d,a[10005],ans=0; cin >>n>>m>>d; for(int i=0;i<n*m;i++) { cin >>a[i]; } int c=a[0]%d; sort(a,a+n*m); for(int i=0;i<n*m;i++) { if(a[i]%d!=c) { cout <<-1<<endl; return 0; } else ans+=abs(a[i]-a[(n*m-1)/2]); } cout <<ans/d<<endl; return 0;}
0 0
- CodeForces 289B--中位数
- CodeForces 540B--填数找中位数
- CodeForces - 540B School Marks (数学思维题 中位数)
- CodeForces 710B Optimal Point on a Line 找中位数
- Educational Codeforces Round 16 B. Optimal Point on a Line(中位数)
- codeforces 166C Median 中位数
- codeforces 289B 递推
- codeforces B
- codeforces B
- codeforces B
- codeforces B
- 有序数组A,B的中位数
- 练习赛一 B 朴素的中位数
- B. Painting Pebbles(Codeforces Round #289 )
- 中位数
- 中位数
- 中位数
- 中位数
- Linux基于TCP/IP简单的客户端、服务器通信程序实例
- iOS APP提交上架最新流程
- Python和二进制(1)
- SLA by Short brain-July-2016
- xshell ssh连接远程服务器出现的乱码问题
- CodeForces 289B--中位数
- OneExerciseOne创建一个类,它包含一个int域,一个char域,他们都没有初始化,验证Java执行了默认初始化
- Java 浅析内部类
- Android平台下用GET获得公开API数据的方法--Retrofit
- jquery获取html包括当前本身
- 笔记1 Activity
- hdu 1009 FatMouse' Trade 贪心
- 实现简单工厂(三)
- js 中null和undefined的区别和用法