codeforces 567C
2015-08-18 11:47
429 查看
mp2存放每个数当中间的数的次数,对每个数,如果有a[i]%k==0,那么ans就加上mp2[a[i]/k],mp表示这个数当第一个数的次数,对每个数,如果有a[i]%k==0,那么mp2[a[i]]就加上mp[a[i]/k]。
#include<bitset> #include<map> #include<vector> #include<cstdio> #include<iostream> #include<cstring> #include<string> #include<algorithm> #include<cmath> #include<stack> #include<queue> #include<set> #define inf 0x3f3f3f3f #define mem(a,x) memset(a,x,sizeof(a)) using namespace std; typedef long long ll; typedef pair<int,int> pii; inline int in() { int res=0; char c; while((c=getchar())<'0' || c>'9'); while(c>='0' && c<='9')res=res*10+c-'0',c=getchar(); return res; } int a[200020]; map<int,ll> mp; map<int,ll>mp2; int main() { int n=in(),k=in(); for(int i=0;i<n;i++) { scanf("%d",&a[i]); } ll ans=0; for(int i=0;i<n;i++) { if(a[i]%k==0) { ans+=mp2[a[i]/k]; mp2[a[i]]+=mp[a[i]/k]; } mp[a[i]]++; } cout<<ans<<endl; return 0; }
相关文章推荐
- POJ 2505 A multiplication game(找规律博弈)
- Spring Uploading Files
- 面向对象编程思想--多态实例分析
- 阿里校招——fork进程问题
- Objective-C 编程艺术
- Activity生命周期
- android 自定义ViewGroup实现可记载并呈现选择的ListView
- Spring Uploading Files
- Spring Uploading Files
- Spring Uploading Files
- 【贪心+优先队列】POJ3190-Stall Reservations
- java中set集合的使用方法
- 张国祥老师参观宁波麒麟集团北仑工厂
- ios常用资料
- Eddy's digital Roots
- sqlce 创建数据库过程
- hdu-2680-Choose the best route(dijkstra)
- IOS UITableview 的Cell 封装
- UE3 材质概要
- ios中KeyChain用途