5.3刷題

P3370 【模板】字符串哈希

#include<bits/stdc++.h>
using namespace std;
#define int long long
typedef unsigned long long ull;
int n;
ull myhash(string s){ull code = 0, x = 131, y = 140814840257324663;for(int i = 0; i < s.size(); i++){code = (code * x + (ull)s[i]) % y;}return code;
}
void solve(){ull a[10010], ans, n;string s;cin >> n;for(int i = 0; i < n; i++){cin >> s;a[i] = myhash(s);}sort(a, a + n);ans = unique(a, a + n) - a;cout << ans << endl;
}
void solve1(){ull a = 0xffffffffffffffff;a = a / 131 - 131;cout << a << endl;while(1){int f = 0;for(ull i = 2; i <= a / i; i++){if(a % i == 0){f = 1;break;}}if(!f){cout << a << endl;return;}a--;}
}
signed main(){ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);solve();return 0;
}

P3405 [USACO16DEC] Cities and States S

#include<bits/stdc++.h>
using namespace std;
#define int long long
int n;
map<pair<int, int>, int>mp;
int myhash(string s){int code = 0;for(int i = 0; i < 2; i++){code = code * 26 + (s[i] - 'A');}return code;
}void solve(){int ans = 0, x, y;string s, c;cin >> n;for(int i = 0; i < n; i++){cin >> c >> s;x = myhash(c);y = myhash(s);if(x == y)continue; mp[{x, y}]++;ans += mp[{y, x}];}cout << ans << endl;
}signed main(){ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);solve(); return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/78277.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/78277.shtml
英文地址,請注明出處:http://en.pswp.cn/web/78277.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Kettle下載安裝教程

## 什么是Kettle Kettle&#xff08;現在也稱為Pentaho Data Integration&#xff0c;簡稱PDI&#xff09;是一款開源的ETL&#xff08;Extract-Transform-Load&#xff09;工具&#xff0c;用于數據抽取、轉換和加載。它允許用戶通過圖形化界面設計和執行數據集成流程&#xf…

FreeRtos實戰從入門到精通--任務創建和刪除(動態方法)--事了拂衣去,深藏功與名

FreeRtos是之前的一些聰明的工程師寫的免費且開源的嵌入式實時操作系統代碼&#xff0c;由于我們實際工作中不需要再去寫rtos&#xff0c;我們只需要用就行了&#xff0c;所以博主這里只分享項目工程實戰相關的內容&#xff0c;具體rtos源碼&#xff0c;可以無需理會&#xff0…

Java通用Mapper自定義方法

目錄 一、定義通用 Mapper 接口二、繼承通用 Mapper 實現自定義方法三、注冊自定義 Mapper 接口四、在實體類對應的 Mapper 接口中使用自定義方法五、實現自定義方法的 SQL 邏輯注解方式XML 映射文件方式六、使用自定義方法七、注意事項在 Java 持久層開發中,MyBatis 的通用 M…

Android WebRTC回聲消除

文章目錄 安卓可用的回聲消除手段各種回聲消除技術優缺點WebRTC回聲消除WebRTC回聲消除回聲消除處理流程WebRTC AECM APP 安卓可用的回聲消除手段 硬件回聲消除 使用 AudioRecord 的 VOICE_COMMUNICATION 模式&#xff1a;通過 AudioRecord 的 VOICE_COMMUNICATION 音頻源可以…

基于 SAFM 超分辨率上采樣模塊的 YOLOv12 改進方法—模糊場景目標檢測精度提升研究

在復雜視覺環境中,如低光照、霧天或遠距離拍攝等場景下,圖像質量下降導致目標模糊,使得傳統目標檢測模型難以實現高精度識別。YOLO系列作為主流單階段檢測框架,在速度和精度方面表現出色,但在模糊和小目標場景中仍存在性能瓶頸。本文提出一種面向 YOLOv12 的創新性改進方法…

Spring 事務的底層原理常見陷阱

一、Spring 事務的底層原理 1. 核心機制 動態代理&#xff08;AOP&#xff09;&#xff1a; Spring 通過動態代理&#xff08;JDK 或 CGLIB&#xff09;生成代理對象&#xff0c;攔截被 Transactional 注解標記的方法。事務攔截器&#xff1a; TransactionInterceptor 負責管…

Java SE(6)——類和對象(一)

1.初始面向對象 1.1 什么是面向對象 Java是一門純面向對象的編程語言(Object Oriented Program&#xff0c;簡稱OOP)&#xff0c;在面向對象的世界里&#xff0c;一切皆為對象。面向對象是解決問題的一種思想&#xff0c;主要依靠對象之間的交換來完成一件事情 1.2 面向過程…

cpp細碎知識點

1 重寫 (Override): 派生類中定義一個與基類虛函數具有相同函數簽名&#xff08;函數名、參數列表、返回類型&#xff09;的函數&#xff0c;這被稱為重寫。 重寫意味著派生類提供了基類虛函數的一個特定于派生類的實現。 重寫是實現多態的關鍵 2 虛基類 (Virtual Base Class…

若依 FastAPI + Vue3 項目 Docker 部署筆記( 啟動器打包教程)

本文記錄了將 start.bat 打包成 .exe 啟動器的詳細教程&#xff0c;適合項目交付或導師演示用。 &#x1f9ed; 一、如何將 start.bat 打包為啟動器 .exe&#xff08;含圖標 自動打開瀏覽器&#xff09; ? 1. 創建三大功能腳本 start.bat → 啟動項目&#xff08;docke…

基于springboot的金院銀行廳預約系統的設計及實現(源碼+lw+部署文檔+講解),源碼可白嫖!

摘要 隨著信息技術在管理上越來越深入而廣泛的應用&#xff0c;信息管理系統的實施在技術上已逐步成熟。信息管理系統是一個不斷發展的新型學科&#xff0c;任何一個單位要生存要發展&#xff0c;要高效率地把內部活動有機地組織起來&#xff0c;就必須建立與自身特點相適應的…

創意控制臺:下雨動畫特效(ASCII 雨滴下落)

在編程的世界里&#xff0c;控制臺不僅僅是輸出文本信息的工具&#xff0c;通過巧妙的代碼設計&#xff0c;我們還能在其中創造出充滿趣味的動態畫面。本文將帶領大家使用 C 語言打造一個創意控制臺下雨動畫特效&#xff0c;利用 ASCII 字符模擬雨滴下落的過程&#xff0c;為單…

MySQL--索引入門

MySQL官方對索引的定義為&#xff1a;索引&#xff08;Index&#xff09;是幫助MySQL高效獲取數據的數據結構。 Mysql在存儲數據之外&#xff0c;數據庫系統各種還維護著滿足特定查找算法的數據結構&#xff0c;這些數據結構以某種引用&#xff08;指向&#xff09;表中的數據…

MIT XV6 - 1.2 Lab: Xv6 and Unix utilities - pingpong

接上文 MIT XV6 - 1.1 Lab: Xv6 and Unix utilities - user/_sleep 是什么&#xff1f;做什么&#xff1f; pingpong 不務正業了那么久(然而并沒有&#xff0c;雖然還在探索sleep&#xff0c;但是教材我已經看完了前三章了)&#xff0c;讓我們趕緊繼續下去 在進行本實驗之前請務…

前端面經-VUE3篇(二)--vue3組件知識(一)組件注冊、props 與 emits、透傳、插槽(Slot)

組件允許我們將 UI 劃分為獨立的、可重用的部分&#xff0c;并且可以對每個部分進行單獨的思考。在實際應用中&#xff0c;組件常常被組織成一個層層嵌套的樹狀結構&#xff1a; 一、注冊 Vue 組件本質上是一個可以復用的 自定義 HTML 元素&#xff0c;為了在其他組件中使用一…

LeetCode —— 102. 二叉樹的層序遍歷

&#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?Take your time ! &#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?&#x1f636;?&#x1f32b;?…

Linux第20節 --- inode和文件系統

一、沒有被打開的文件 如果一個文件沒有被打開&#xff0c;那么該文件存儲在哪里&#xff1f; 該文件是存儲在磁盤當中的&#xff01; 文件 文件內容 文件屬性&#xff01; 文件的內容是按照數據塊存儲的&#xff1b;文件的屬性其實就是inode&#xff08;是一個128字節的…

1.PowerBi保姆級安裝教程

1.進入power bi網站 PowerBi下載鏈接 2.下載power bi軟件 3.雙擊安裝 4.下一步 5.下一步 6.下一步 7.下一步 8.安裝 9.雙擊桌面圖標

Android Studio中OpenCV應用詳解:圖像處理、顏色對比與OCR識別

文章目錄 一、OpenCV在Android中的集成與配置1.1 OpenCV簡介1.2 在Android Studio中集成OpenCV1.2.1 通過Gradle依賴集成1.2.2 通過模塊方式集成1.2.3 初始化OpenCV 1.3 OpenCV基礎類介紹 二、指定區域圖像抓取與對比2.1 圖像抓取基礎2.2 指定區域圖像抓取實現2.2.1 從Bitmap中…

前端面試每日三題 - Day 22

今天我們將深入探討 JavaScript 中的 Set 和 Map 數據結構&#xff0c;了解它們的特性及應用場景。接下來&#xff0c;我們會分析 React 的 Suspense 和 Concurrent Mode 的工作原理&#xff0c;探索它們如何提升應用的性能和用戶體驗。最后&#xff0c;我們將學習如何設計一個…

[Vue]編程式導航

在 Vue 中&#xff0c;編程式導航是通過 JavaScript 代碼&#xff08;而非 <router-link> 標簽&#xff09;動態控制路由跳轉的核心方式。這個方法依賴于 Vue Router 提供的 API&#xff0c;能更靈活地處理復雜場景&#xff08;如異步操作、條件跳轉等&#xff09;。 一、…