2025吉林CCPC 題解(前六題)

?

// Problem: J - Odd-Even Game
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/J
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
//       簽到題
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se secondvoid solve()
{int a,b;cin>>a>>b;if((a&1)==0) swap(a,b);if(a>b) cout<<1<<endl;else cout<<2<<endl;
}signed main()
{IOSint T=1;
//	cin>>T;while(T--) solve(); return 0;
} 

?

?

// Problem: C - SSPPSPSP
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/C
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
const int mod = 998244353;
const int N = 15;
int a[N];int power(int a,int b)//快速冪函數
{int ans=1;while(b){if(b&1){ans*=a;ans%=mod;}a*=a;a%=mod;b>>=1;}return ans%mod;
}void solve()
{int ans=0;int sums=0,sump=1;int n,k; cin>>n>>k;for(int i=0;i<n;i++){cin>>a[i];sums+=a[i]; sums%=mod;//sums中存放從a[0]到a[n-1]的和sump*=a[i]; sump%=mod;//sump中存放從a[0]到a[n-1]的積}string s; cin>>s;if(s[s.size()-1]=='p')//先確定開始的ansans = sump;elseans = sums;for(int i=s.size()-2;i>=0;i--){if(s[i]=='p')//如果是累乘操作 就相當于乘了n次sump{ans = power(ans,n);ans%=mod;}else//如果是累加操作就相當于是進行了n次累加操作{ans*=n;ans%=mod;}}cout<<ans%mod<<endl;
}
/*問題剖析:注意看公式的角標 -> (x1+x2+x3) mod n 換句話說 角標會每次都從第一個數到最后一個數當內層循環 x1 x2都為0 這時候x3不斷增加 角標實際上就是遍歷了一遍數組所以只需要逆向判斷當前操作是加還是乘即可如果是加法就是把當前的ans累加了n次如果是乘法就是把當前的ans累乘了n次正常模擬即可
*/
signed main()
{IOSint T=1;
//	cin>>T;while(T--) solve(); return 0;
} 

// Problem: D - Coprime
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/D
// Memory Limit: 1024 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second//const int mod = 998244353;void solve()
{int x,y;cin>>x>>y;for(int i=x+1;i<y;i++){if(__gcd(i,x)==1&&__gcd(i,y)==1){cout<<i<<endl;return ;}}cout<<-1<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
} 

?

?

// Problem: F - Ever Forever
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/F
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second//const int mod = 998244353;void solve()
{vector<int> a;int ans=0;int n; cin>>n;string s;cin>>s;for(int i=0;i<s.size();i++){if(s[i]=='e'){a.push_back(i);}else{for(auto it : a){ans += (i-it);}}}cout<<ans<<endl;
}signed main()
{IOSint T=1;
//	cin>>T;while(T--) solve(); return 0;
} 

// Problem: G - Rock-Paper-Scissors
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/G
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
vector<int> v(4),a(4),vv(4),aa(4);void solve()
{int n;cin>>n;cin>>v[1]>>v[2]>>v[3]>>a[1]>>a[2]>>a[3];vv=v,aa=a;int mx=0;//假設下標 1 2 3 分別為石頭剪刀布 計算mx就需要讓小V盡可能的贏 首先計算小V出石頭能贏的局數int x = min(v[1],a[2]);v[1]-=x;a[2]-=x;mx+=x;//小V出剪刀能贏的局數x = min(v[2],a[3]);v[2]-=x;a[3]-=x;mx+=x;//小V出布能贏的局數x = min(v[3],a[1]);v[3]-=x;a[1]-=x;mx+=x;//如果小V的石頭還有剩余 那么就貪心一點 先計算能平局的局數 if(v[1]){x = min(v[1],a[1]);v[1]-=x;a[1]-=x;if(v[1])//如果小V還有剩余的石頭說明已經把小A的剪刀和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[1],a[3]);mx-=xx;v[1]-=xx;a[3]-=xx;}}//如果小V的剪刀還有剩余 那么就貪心一點 先計算能平局的局數 if(v[2]){x = min(v[2],a[2]);v[2]-=x;a[2]-=x;if(v[2])//如果小V還有剩余的剪刀說明已經把小A的布和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[2],a[1]);mx-=xx;v[2]-=xx;a[1]-=xx;}}//如果小V的布還有剩余 那么就還貪心一點 先計算能平局的局數 if(v[3]){x = min(v[3],a[3]);v[3]-=x;a[3]-=x;if(v[3])//如果小V還有剩余的布說明已經把小A的布和石頭都消耗完了 那么就沒辦法了 再貪心也只能輸了就統計輸的局數{int xx=min(v[3],a[2]);mx-=xx;v[3]-=xx;a[2]-=xx;}}cout<<mx<<' ';int mi=0;x = min(aa[1],vv[2]);aa[1]-=x;vv[2]-=x;mi+=x;//同上面計算一樣 要計算最小值 就要讓小A盡可能的贏 即讓小V盡可能的輸 只需要把前文中的代碼復制過來 a改為vv v改為aa即可x = min(aa[2],vv[3]);aa[2]-=x;vv[3]-=x;mi+=x;//同上x = min(aa[3],vv[1]);aa[3]-=x;vv[1]-=x;mi+=x;//同上if(aa[1]){x = min(aa[1],vv[1]);aa[1]-=x;vv[1]-=x;if(aa[1])//同上{int xx=min(aa[1],vv[3]);mi-=xx;aa[1]-=xx;vv[3]-=xx;}}//同上if(aa[2]){x = min(aa[2],vv[2]);aa[2]-=x;vv[2]-=x;if(aa[2])//同上{int xx=min(aa[2],vv[1]);mi-=xx;aa[2]-=xx;vv[1]-=xx;}}//同上if(aa[3]){x = min(aa[3],vv[3]);aa[3]-=x;vv[3]-=x;if(aa[3])//同上{int xx=min(aa[3],vv[2]);mi-=xx;aa[3]-=xx;vv[2]-=xx;}}cout<<-mi<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
} 

?

// Problem: L - Good Matrix
// Contest: Virtual Judge - sdccpc20250527
// URL: https://vjudge.net/contest/719585#problem/L
// Memory Limit: 1024 MB
// Time Limit: 1000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define endl '\n'
#define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
#define PII pair<int,int>
#define fi first
#define se second
const int mod =  998244353;
int power(int a,int b)//快速冪函數
{int ans=1;while(b){if(b&1){ans*=a;ans%=mod;}a*=a;a%=mod;b>>=1;}return ans%mod;
}void solve()
{int x,y;cin>>x>>y;int ans=0;if(x%2==0||y%2==0){if(x&1){ans=y-1;}if(y&1){ans=x-1;}}else if(x&1&&y&1){ans = x+y-2;}elseans=0;cout<<power(2,ans)<<endl;
}signed main()
{IOSint T=1;cin>>T;while(T--) solve(); return 0;
} 

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

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

相關文章

Q: dify知識庫模塊主要庫表和字段

【回到目錄】~~~~【回到問題集】 Q: dify知識庫模塊主要庫表和字段 A: 表1&#xff1a;datasets 知識庫表 name 知識庫名稱 index_struct 向量索引node 表2&#xff1a;document 文檔表 name 文檔名稱 word_count 字數 doc_form 分段類型(hierarchical_model、qa_model、te…

NodeMediaEdge快速上手

NodeMediaEdge快速上手 簡介 NodeMediaEdge是一款部署在監控攝像機網絡前端中&#xff0c;拉取Onvif或者rtsp/rtmp/http視頻流并使用rtmp/kmp推送到公網流媒體服務器的工具。 通過云平臺協議注冊到NodeMediaServer后&#xff0c;可以同NodeMediaServer結合使用。使用圖形化的…

通用前端框架項目靜態部署到Hugging Face Space的實踐指南

背景介紹 在輕量級展示前端項目的場景中,Hugging Face Space 提供了一個便捷的靜態托管平臺。需求是將無后端服務的Vite的 Vue項目部署到Hugging Face Space 上。其實無論是基于Vite的Vue/React項目,還是使用Webpack構建的工程化方案,都可以通過兩種方式將其部署到Space:自…

Android studio 查看aar源碼出現/* compiled code */

如圖查看aar源碼時看不到具體實現&#xff0c;在排除是sdk版本導致的問題后&#xff0c;下面說解決方法 打開設置&#xff0c;找到插件 輸入decompiler 搜索 這個是自帶的反編譯工具&#xff0c;啟用就好了

Spark實時流數據處理實例(SparkStreaming通話記錄消息處理)

所用資源&#xff1a; 通過網盤分享的文件&#xff1a;spark-streaming-kafka-0-8-assembly_2.11-2.4.8.jar等4個文件 鏈接: https://pan.baidu.com/s/1zYHu29tLgDvS_L2Ud-22ZA?pwdhnpg 提取碼: hnpg 1.需求分析 &#xff1a; 假定有一個手機通信計費系統&#xff0c;用戶通…

Vue3處理number輸入框避免NaN

在 Vue3 中處理 number 類型輸入框避免顯示 NaN&#xff0c;核心在于正確處理用戶輸入的非數字值。以下是幾種解決方案&#xff1a; 方案1&#xff1a;使用字符串中轉 計算屬性&#xff08;推薦&#xff09; vue 復制 下載 <template><input v-model"input…

Python自動化之selenium語句——瀏覽器設置顯示尺寸、截圖、刷新網頁

目錄 一、瀏覽器設置最大化、最小化 1.瀏覽器最大化 2.瀏覽器最小化 二、瀏覽器打開的位置、尺寸 1.瀏覽器打開位置 2.瀏覽器打開尺寸 三、瀏覽器截圖 1.截圖語句 2.運行成功后查看 四、刷新網頁 上一節實現了打開瀏覽器、打開指定網址、關閉瀏覽器的操作&#xff0c…

model.classifier:分類頭

model.classifier:分類頭 分類頭(model.classifier)含義 在基于Transformer架構的模型(如BERT、GPT等 )用于分類任務時,“分類頭(model.classifier)” 是模型的一個重要組成部分。以Hugging Face的Transformers庫為例,許多預訓練模型在完成通用的預訓練任務(如語言…

4.1.2 操作數據集

在本實戰中&#xff0c;我們深入學習了Spark SQL的操作數據集&#xff0c;包括了解Spark會話、準備數據文件、啟動Spark Shell以及獲取和操作學生數據集。通過Spark Shell&#xff0c;我們可以直接使用SparkSession實例來加載、轉換和處理數據。我們學習了如何將文本文件加載為…

LangChain整合Milvus向量數據庫實戰:數據新增與刪除操作

導讀&#xff1a;在AI應用開發中&#xff0c;向量數據庫已成為處理大規模語義搜索和相似性匹配的核心組件。本文通過詳實的代碼示例&#xff0c;深入探討LangChain框架與Milvus向量數據庫的集成實踐&#xff0c;為開發者提供生產級別的向量數據管理解決方案。 文章聚焦于向量數…

從根源解決Augment免費額度限制問題:Windows詳細教程

從根源解決Augment免費額度限制問題&#xff1a;Windows詳細教程 本文將詳細介紹如何在Windows系統上解決Augment AI助手的"Too many free trials"限制問題&#xff0c;通過清理VS Code緩存和修改設備ID實現無限制使用Augment的方法。 視頻地址 augment從根源上解決免…

IoTDB 集成 DBeaver,簡易操作實現時序數據清晰管理

數據結構一目了然&#xff0c;跨庫分析輕松實現&#xff0c;方便 IoTDB “內部構造”管理&#xff01; 隨著物聯網場景對時序數據處理需求激增&#xff0c;時序數據庫與數據庫管理工具的集成尤為關鍵。作為數據資產的 “智能管家”&#xff0c;借助數據庫管理工具的可視化操作界…

應用層協議http(無代碼版)

目錄 認識URL urlencode 和 urldecode HTTP 協議請求與響應格式 HTTP 的請求方法 GET 方法 POST 方法 HTTP 的狀態碼 HTTP 常見 Header Location 關于 connection 報頭 HTTP版本 遠程連接服務器工具 setsockopt 我們來學習應用層協議http。 雖然我們說, 應用層協…

Cangjie 中的值類型與引用類型

1. 值類型和引用類型 1.1 值的存儲方式 所有變量在底層實現中&#xff0c;都會關聯一個具體的“值”&#xff0c;這個值可能存儲在 內存地址 或 寄存器 中。 寄存器用于優化常用變量的訪問速度。只有局部、小、頻繁使用的變量才更可能被分配到寄存器中。實際行為由編譯器根據…

使用el-input數字校驗,輸入漢字之后校驗取消不掉

先說說復現方式 本來input是只能輸入數字的&#xff0c;然后你不小心輸入了漢字&#xff0c;觸發校驗了&#xff0c;然后這時候&#xff0c;你發現校驗取消不掉了 就這樣了 咋辦啊&#xff0c;你一看校驗沒錯啊&#xff0c;各種number啥的也寫了,發現沒問題啊 <el-inputv…

使用 Zabbix 監控 MySQL 存儲空間和性能指標的完整實踐指南

目錄 引言 一、最終目標支持功能 二、監控方案設計 2.1 技術選型 2.2 設計思路 三、實現步驟 3.1 準備工作 3.11 創建 MySQL 監控賬號 3.12 配置 .my.cnf 文件 3.2 編寫統一腳本 3.3 配置 Zabbix Agent UserParameter 3.4 Zabbix 前端配置建議 四、總結 引言 MySQL …

多元素納米顆粒:開啟能源催化新紀元

在能源轉型的浪潮中&#xff0c;納米催化劑正成為推動能源技術突破的關鍵力量。多元素納米顆粒&#xff08;Polyelemental Nanoparticles&#xff09;憑借其獨特的元素協同效應&#xff0c;展現出在能源催化領域的巨大潛力。然而&#xff0c;合成這些復雜體系的納米顆粒面臨著諸…

鐵路行業數字化應用建設方案

數字化轉型面臨的挑戰 鐵路行業正處于數字化轉型的關鍵時期&#xff0c;鐵路行業應用場景復雜&#xff0c;數據量巨大&#xff0c;傳統信息化建設模式難以滿足日益增長的業務需求。鐵路企業亟需引入敏捷高效的數字化工具&#xff0c;加速推進業務創新&#xff0c;實現提質增效…

PlankAssembly 筆記 DeepWiki 正交視圖三維重建

manycore-research/PlankAssembly | DeepWiki PlankAssembly項目原理 這個項目是一個基于深度學習的3D重建系統&#xff0c;其核心原理是從三個正交視圖的工程圖紙中重建出3D形狀的結構化程序表示。 核心技術原理 1. 問題定義 PlankAssembly旨在從三個正交視圖的工程圖紙中…

分布式不同數據的一致性模型

1. 強一致性&#xff08;Strong Consistency&#xff09; 定義&#xff1a;所有節點在任何時間點看到的數據完全一致&#xff0c;讀操作總是返回最近的寫操作結果。特點&#xff1a; 寫操作完成后&#xff0c;所有后續讀操作都能立即看到更新。通常需要同步機制&#xff08;如…