zoukankan      html  css  js  c++  java
  • 【洛谷 1102】A-B数对

    题目描述

    出题是一件痛苦的事情!

    相同的题目看多了也会有审美疲劳,于是我舍弃了大家所熟悉的 A+B Problem,改用 A-B 了哈哈!

    好吧,题目是这样的:给出一串数以及一个数字 CCC,要求计算出所有 A−B=CA - B = CAB=C 的数对的个数(不同位置的数字一样的数对算不同的数对)。

    输入格式

    输入共两行。

    第一行,两个整数 N,CN, CN,C。

    第二行,NNN 个整数,作为要求处理的那串数。

    输出格式

    一行,表示该串数中包含的满足 A−B=CA - B = CAB=C 的数对的个数。

    输入输出样例

    输入 #1
    4 1
    1 1 2 3
    
    输出 #1
    3

    说明/提示

    对于 75%75\%75% 的数据,1≤N≤20001 leq N leq 20001N2000。

    对于 100%100\%100% 的数据,1≤N≤2×1051 leq N leq 2 imes 10^51N2×105。

    保证所有输入数据都在 323232 位带符号整数范围内。

    2017/4/29 新添数据两组

    题解:map练习题

    #include<cstdio>
    #include<iostream>
    #include<cmath>
    #include<cstdlib>
    #include<cstring>
    #include<algorithm>
    #include<bits/stdc++.h>
    typedef long long ll;
    using namespace std;
    const int N=200002;
    int n;
    ll a[N],c,ans;
    map<ll,ll>mddd;
    int main(){
       // freopen("1102.in","r",stdin);
       // freopen("1102.out","w",stdout);
        scanf("%d %lld",&n,&c);
        for(int i=1;i<=n;i++){
            scanf("%lld",&a[i]);
            mddd[a[i]]++; a[i]-=c;
        }
        for(int i=1;i<=n;i++)
            ans+=mddd[a[i]];
        cout<<ans;
        return 0;
    }
  • 相关阅读:
    iOS 之 内存管理
    php的异步并行扩展swoole
    如何用php实现qq登陆网站
    php分页类
    php的分页代码
    一个小的投票系统
    php如何判断两个时间戳是一天
    PHP中出现Notice: Undefined index的三种解决办法
    vmvare如何安装xp虚拟机
    windows2003安装
  • 原文地址:https://www.cnblogs.com/wuhu-JJJ/p/14075588.html
Copyright © 2011-2022 走看看