[刷题codeforces]650A.637A
650A |
637A |
点击查看原题
650A又是一个排序去重的问题,一定要注意数据范围用long long ,而且在写计算组合函数的时候注意也要用long long 虽然10^9没有超过long的范围,但是在计算n*(n-1)/2的过程中超了,所以需要用long long ,否则会出错。
#include<iostream> #include<cmath> #include<cstdlib> #include<cstdio> #include<algorithm> using namespace std; long n; struct Point { long x,y; }; bool cmpx(const Point &p1,const Point &p2) { if (p1.x!=p2.x) { return p1.x<p2.x; } else { return p1.y<p2.y; } } bool cmpy(const Point &p1,const Point &p2) { if (p1.y!=p2.y) { return p1.y<p2.y; } else { return p1.x<p2.x; } } long long cn2(long long n) { )/; } Point a[]; Point ax[]; ]; Point ay[]; ]; Point axy[]; ]; void mysortx(Point *a,Point *ax) { axc[]=; ; while (p<n) { ; axc[]++; ax[axc[]]=a[p]; <n && a[p+].x==a[p].x) { p++; coup++; } axc[axc[]]=coup; p++; } } void mysorty(Point *a,Point *ay) { ayc[]=; ; while (p<n) { ; ayc[]++; ay[ayc[]]=a[p]; <n && a[p+].y==a[p].y) { p++; coup++; } ayc[ayc[]]=coup; p++; } } void mysortxy(Point *a,Point *axy) { axyc[]=; ; while (p<n) { ; axyc[]++; axy[axyc[]]=a[p]; <n && a[p+].x==a[p].x && a[p+].y==a[p].y) { p++; coup++; } axyc[axyc[]]=coup; p++; } } int main() { scanf("%ld",&n); ;i<n;i++) { scanf("%ld %ld",&a[i].x,&a[i].y); } sort(a,a+n,cmpx); mysortx(a,ax); /*for (int i=1;i<=axc[0];i++) { cout <<ax[i].x <<"," <<ax[i].y <<"|" <<axc[i]<<endl; }*/ sort(a,a+n,cmpy); mysorty(a,ay); mysortxy(a,axy); ; ;i<=axc[];i++) { ans+=cn2(axc[i]); } ;i<=ayc[];i++) { ans+=cn2(ayc[i]); } ;i<=axyc[];i++) { ans-=cn2(axyc[i]); } printf("%I64d\n",ans); ; }
637A原本是想的双关键字sort,但是后来发现没有那么麻烦,直接把数据存进1000000的数组扫两遍就行了。注意细节,尤其是for循环的起始位置。
#include<stdio.h> #include<stdlib.h> struct point { int o,x,y; }; ]; int main() { int n; scanf("%d",&n); int i; ;i<=;i++) { a[i].o=i; } ;i<=n;i++) { int input; scanf("%d",&input); (a[input].x)++; (a[input].y)=i; } ; ].x; ;i<=;i++) { if (a[i].x>maxn) { maxn=a[i].x; maxj=i; } } ; ; ;i<=;i++) { if (a[i].x==maxn && a[i].y<minm) { mini=i; minm=a[i].y; } } printf("%d\n",a[mini].o); ; }
[刷题codeforces]650A.637A的更多相关文章
- [刷题]Codeforces 794C - Naming Company
http://codeforces.com/contest/794/problem/C Description Oleg the client and Igor the analyst are goo ...
- [刷题codeforces]651B/651A
651B Beautiful Paintings 651A Joysticks 点击可查看原题 651B是一个排序题,只不过多了一步去重然后记录个数.每次筛一层,直到全为0.从这个题里学到一个正确姿势 ...
- [刷题]Codeforces 786A - Berzerk
http://codeforces.com/problemset/problem/786/A Description Rick and Morty are playing their own vers ...
- [刷题]Codeforces 746G - New Roads
Description There are n cities in Berland, each of them has a unique id - an integer from 1 to n, th ...
- CF刷题-Codeforces Round #481-G. Petya's Exams
题目链接:https://codeforces.com/contest/978/problem/G 题目大意:n天m门考试,每门考试给定三个条件,分别为:1.可以开始复习的日期.2.考试日期.3.必须 ...
- CF刷题-Codeforces Round #481-F. Mentors
题目链接:https://codeforces.com/contest/978/problem/F 题目大意: n个程序员,k对仇家,每个程序员有一个能力值,当甲程序员的能力值绝对大于乙程序员的能力值 ...
- CF刷题-Codeforces Round #481-D. Almost Arithmetic Progression
题目链接:https://codeforces.com/contest/978/problem/D 题解: 题目的大意就是:这组序列能否组成等差数列?一旦构成等差数列,等差数列的公差必定确定,而且,对 ...
- [刷题]Codeforces 785D - Anton and School - 2
Description As you probably know, Anton goes to school. One of the school subjects that Anton studie ...
- Codeforces刷题计划
Codeforces刷题计划 已完成:-- / -- [Codeforces370E]370E - Summer Reading:构造:(给定某些数,在空白处填数,要求不下降,并且相邻差值<=1 ...
随机推荐
- tomcat启动中提示 - consider increasing the maximum size of the cache
tomcat启动过程中提示: org.apache.catalina.webresources.Cache.getResource Unable to add the resource at xxx ...
- make menuconfig 出错
运行 #make menuconfig HOSTLD scripts/kconfig/mconf scripts/kconfig/mconf.o: In function `main': mconf. ...
- tomcat调优的几个方面
转载自:http://my.oschina.net/u/593721/blog/146710 作者:小报童 和早期版本相比最新的Tomcat提供更好的性能和稳定性.所以一直使用最新的Tomcat版本. ...
- 【转】NSDictionary以及NSMutableDictionary的用法
原文网址:http://my.oschina.net/u/1245365/blog/177736 摘要 Foundation中的字典是由 键—值 对组成的数据集合.通过key(键),查找对应的valu ...
- jQuery点击div其他地方隐藏div
$(document).bind("click",function(e){ var target = $(e.target); ){ $("#regionlist&quo ...
- 图片鼠标滑过图片半透明(jquery特效)
在做瑞祥之旅的过程,有一个部分是材料体系,材料体系下面.预览效果
- 如何打开和关闭Oracle Flashback
1.打开flashback: 关闭数据库 SQL>shutdown immediate; 启动到mount方式 SQL>startup mount; 如果归档没有打开,打开归档[因为fla ...
- hisi平台mii网络模式和rmii网络模式的uboot制作
MII网络uboot编译说明 一:编译生成默认的uboot1. 进入到uboot目录a. cd /home/satan/Hi3518_SDK_V1.0.7.0/osdrv/uboot2. 新建临时文件 ...
- 在stm32上移植wpa_supplicant(一)
wifi芯片为88w8686,已经写好了驱动,用的是SPI方式,接下来准备移植wpa_supplicant.参考的资料为一篇论文----<基于微控制器的WPA技术研究与应用>. wpa_s ...
- 转载:fstream和ifstream详细用法
文件 I/O 在C++中比烤蛋糕简单多了.在这篇文章里,我会详细解释ASCII和二进制文件的输入输出的每个细节,值得注意的是,所有这些都是用C++完成的. 一.ASCII 输出 为了使用下面的方法, ...