日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

信息学奥赛一本通 1115:直方图 | OpenJudge NOI 1.9 09

發布時間:2025/3/17 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 信息学奥赛一本通 1115:直方图 | OpenJudge NOI 1.9 09 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【題目鏈接】

ybt 1115:直方圖
OpenJudge NOI 1.9 09:直方圖

【題目考點】

1. 散列存儲

也叫哈希存儲。其思想為:將要存儲的通過某種算法映射到存儲地址,映射算法為散列函數。在當前學習階段,存儲地址指的就是數組的下標。
例:統計一段由小寫字母組成的英文字符串中各字母出現的個數

  • 設整型數組a保存各個字母出現的個數,字符c表示要統計的英文字符。
  • 字符c的對應數組a的地址i,即字符c的個數由a[i]來統計。這里c與i的關系,即為散列函數,這里將散列函數設為:i = c - ‘a’,即a[c-‘a’]表示統計得到的字符c的個數。

2. 求最大值

【解題思路】

設整型數組a,a[i]表示數字i的個數。數組a要初始化為0,寫法為:int a[N] = {};,其中N要比要統計的最大數字更大。

【題解代碼】

解法1:

#include <bits/stdc++.h> using namespace std; int main() {int a[10005] = {}, n, num, fmax = 0;//a[i]表示數字i的個數,fmax:最大數字 cin>>n;for(int i = 0; i < n; ++i){cin>>num;a[num]++;if(num > fmax)fmax = num;}for(int i = 0; i <= fmax; ++i)cout<<a[i]<<endl;return 0; }

總結

以上是生活随笔為你收集整理的信息学奥赛一本通 1115:直方图 | OpenJudge NOI 1.9 09的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。