ACM_梦中的函数
2024-09-08 09:58:32
梦中的函数
Time Limit: 2000/1000ms (Java/Others)
Problem Description:
寒假那段时间,每天刷题的小G连做梦都是代码,于是有了这道题。
给定一个数组a,求g(a),g(a)=∑( a[i]*f(a[i]) )
其中f(x)表示x在数组a中的出现次数,重复数字不重复计算。
Input:
多组数据输入(EOF),每组数据第一行是数组a的大小N(1<=N<=10000),第二行是N个数A1到AN(-10000<=Ai<=10000)
Output:
对于每组测试数据,以"ans"=answer的形式输出答案。
Sample Input:
5
2 23 233 233 2333
Sample Output:
"ans"=2824
解题思路:使用map容器(键:某个数字,值:对应数字出现的次数)简单过,时间复杂度为O(nlogn)。
AC代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
LL ans;int x,n;map<int,int> mp;
int main(){
while(cin>>n){
mp.clear();ans=;
while(n--){cin>>x;mp[x]++;}
for(map<int,int>::iterator it=mp.begin();it!=mp.end();++it)
ans+=(it->first)*(it->second);//键值的引用
cout<<"\"ans\"="<<ans<<endl;
}
return ;
}
最新文章
- button自适应宽度 并根据屏幕宽自动换行排列
- java程序性能优化
- 微信扫码i支付~官方DEMO的坑
- 关于ORACLE中配置文件的问题
- SQL Server Window Function 窗体函数读书笔记二 - A Detailed Look at Window Functions
- HDU 3038 How Many Answers Are Wrong(带权并查集)
- 基本分类方法——KNN(K近邻)算法
- maven下载的jar文件出现invalid LOC header (bad signature)
- Spark Tungsten揭秘 Day2 Tungsten-sort Based Shuffle
- gtest的安装和测试[good]
- Lightoj 1066 Gathering Food (bfs)
- java注解--Annotation
- Java中Dom解析xml文档
- 实现Android Native端爆破源码
- mysql-笔记-命名、索引规范
- github使用的小坑 处理
- Oracle 11g 单实例到单实例OGG同步实施文档-OGG initial load
- 接口测试(二) 优化项目分层及cookies值带入
- Python面向对象——多态
- 2-8 R语言基础 日期与时间