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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第四届“传智杯”全国大学生IT技能大赛(决赛B组)

發(fā)布時(shí)間:2024/8/1 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第四届“传智杯”全国大学生IT技能大赛(决赛B组) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

第四屆“傳智杯”全國大學(xué)生IT技能大賽(決賽B組)

  • A. 小智的疑惑
  • B. 三元組
  • C. 排排隊(duì)
  • D. 背單詞的小智
  • E. 游戲
  • F1. 生活在樹上(easy version)

A. 小智的疑惑

題目描述

傳智專修學(xué)院給了小智一個(gè)僅包含小寫字母的字符串 s,他想知道,里面出現(xiàn)了多少次子串 chuanzhi 呢。
我們稱一個(gè)字符串 t 是 s 的子串,當(dāng)且僅當(dāng)將 s 的開頭若干個(gè)(可以為 0 個(gè))連續(xù)字符和結(jié)尾若干個(gè)(可以為 0 個(gè))連續(xù)字符刪去后,剩下的字符串和 t 相同。例如,我們稱 ab 是 abc 的子串,但 ac 不是 abc 的子串。

解題思路: 直接開python,快速方便。

print (input().count('chuanzhi'))

B. 三元組

題目描述
給定一個(gè)長度為 n 的數(shù)列 a,對(duì)于一個(gè)有序整數(shù)三元組 (i,j,k),若其滿足 1≤i≤j≤k≤n 并且 ai+aj=ak?,則我們稱這個(gè)三元組是「傳智的」。
現(xiàn)在請(qǐng)你計(jì)算,有多少有序整數(shù)三元組是傳智的。

解題思路: 暴力循環(huán)。

#include<bits/stdc++.h> using namespace std; int a[105],n,b[105],ans,t; int main() {cin>>t;while(t--){for(int i=0;i<105;i++)b[i]=0;ans=0;cin>>n;for(int i=0;i<n;i++)cin>>a[i];for(int i=0;i<n;i++){for(int j=i;j<n;j++){for(int k=j;k<n;k++){if(a[i]+a[j]==a[k])ans++;}}}cout<<ans<<endl;}return 0; }

C. 排排隊(duì)

題目描述
在傳智專修學(xué)院中,每個(gè)人都有一個(gè)身高 ai?,并且只有相鄰的兩個(gè)人可以交換位置。小智帶領(lǐng)的隊(duì)伍有 n 個(gè)人,他現(xiàn)在要給大家排隊(duì)形。

給定一個(gè)長度為 n 的序列 b,一個(gè)隊(duì)形被認(rèn)為美觀,當(dāng)且僅當(dāng)對(duì)于所有的 i=1,2,3,…n,ai=bi。小智想知道,他能否讓大家的隊(duì)形變得美觀,并且交換相鄰兩個(gè)人的次數(shù)不超過 n^2 次。這個(gè)問題把小智難住了,請(qǐng)你幫他來解決這個(gè)問題,如果存在合法的交換方案,輸出 YES,并給出一組方案;否則,輸出 NO。

解題思路: 重新對(duì)a進(jìn)行排序然后交換位置,假設(shè)a={1,2,2,3},b={3,2,2,1},給多一個(gè)數(shù)組對(duì)當(dāng)前的a確認(rèn)位置num={4,2,3,1}代表最終要去到的位置,對(duì)num數(shù)字進(jìn)行冒泡排序交換i和j的值最后變成{1,2,3,4}就可以了。

#include<bits/stdc++.h> using namespace std; const int N=1010; int t,n,a[N],b[N],num[N],flag; int main() {cin>>t;while(t--){flag=0;memset(num,0,sizeof num);cin>>n;for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<=n;i++)cin>>b[i];for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(a[j]==b[i]&&num[j]==0)//確保每個(gè)都有對(duì)應(yīng){num[j]=i;break;}}}for(int i=1;i<=n;i++)if(num[i]==0)flag=1;if(flag)//數(shù)量對(duì)不上直接輸出no{cout<<"NO"<<endl;continue;}cout<<"YES"<<endl;for(int i=1;i<n;i++){for(int j=1;j<n;j++){if(num[j]>num[j+1]){cout<<j<<" "<<j+1<<endl;swap(num[j],num[j+1]);}}}cout<<"0 0"<<endl;}return 0; }

D. 背單詞的小智

題目描述
大概意思就是,n個(gè)單詞分成k個(gè)區(qū)間,確保最大的區(qū)間價(jià)值最小。
對(duì)于樣例二,分成兩個(gè)區(qū)間,代價(jià)分別是1+4+9=14和16,最大價(jià)值為16是最優(yōu)解。
解題思路: 二分最大值。

#include<bits/stdc++.h> using namespace std; typedef long long ll; ll n,k,a[100005],x; bool pd(ll num) {ll ans=0,sum=0;for(int i=1;i<=n;i++){sum+=a[i];if(sum+a[i+1]>num)sum=0,ans++;}if(sum>0)ans++;if(ans>k)return false;return true; } int main() {ll l=1,r=1e18;cin>>n>>k;for(int i=1;i<=n;i++){cin>>x,a[i]=x*x;l=max(l,a[i]);}while(l<r){ll mid=l+r>>1;if(pd(mid))r=mid;else l=mid+1;}cout<<l<<endl;return 0; }

E. 游戲

寫不出來555

F1. 生活在樹上(easy version)

題目描述
給出n個(gè)節(jié)點(diǎn)和m個(gè)查詢,查詢兩個(gè)城市之間的權(quán)值異或和是否等于k。
題目確保了城市是一棵最小生成樹。

解題思路: 首先我們要知道異或的性質(zhì)
交換律: a ^ b ^ c = a ^ c ^ b
任何數(shù)于0異或?yàn)槿魏螖?shù) :0 ^ n = n
相同的數(shù)異或?yàn)?:n ^ n = 0
接著看樣例一的圖

城市1到城市4的其中一種異或就是1-3異或4-3,結(jié)果就是8 ^ 2 ^ 6 ^ 6,相當(dāng)于城市1直接異或到城市4,也就是8 ^ 2,所以我們只需要判斷最短路徑上的異或是否等于k然后輸出就好了。

#include<bits/stdc++.h> using namespace std; typedef unsigned long long ull; const int N=500005; int n,m,a[N],x,y,nex[N*2],en[N*2],ans; ull w[N*2],num[N],val; bool pd[N]; void add(int x,int y,ull val) {en[ans]=y;w[ans]=val;nex[ans]=a[x];a[x]=ans++; } void dfs(int cnt) {for(int i=a[cnt];i!=-1;i=nex[i]){int j=en[i];if(!pd[j]){num[j]=num[cnt]^w[i];pd[j]=1;dfs(j);pd[j]=0;}} } int main() {std::ios::sync_with_stdio(false);cin.tie(0);cin>>n>>m;for(int i=1;i<=n;i++)a[i]=-1;for(int i=1;i<n;i++){cin>>x>>y>>val;add(x,y,val);add(y,x,val);}pd[1]=1;for(int i=a[1];i!=-1;i=nex[i]){num[en[i]]=w[i];dfs(en[i]);}while(m--){ull u,v;cin>>u>>v>>val;if(n==1){cout<<"NO"<<endl;continue;}if(u!=1&&v!=1){if((num[u]^num[v])==val)cout<<"YES"<<endl;else cout<<"NO"<<endl;}else{if(u==1){if(num[v]==val)cout<<"YES"<<endl;else cout<<"NO"<<endl;}else{if(num[u]==val)cout<<"YES"<<endl;else cout<<"NO"<<endl;}}}return 0; }

總結(jié)

以上是生活随笔為你收集整理的第四届“传智杯”全国大学生IT技能大赛(决赛B组)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 性一交一乱一色一免费无遮挡 | 免费污视频 | 色中文在线 | 亚洲一区二区自偷自拍 | 粗大的内捧猛烈进出 | 九九热精品视频在线 | 日韩精品久久久久久 | 精品国产成人亚洲午夜福利 | 亚洲免费一区视频 | 亚洲乱码精品久久久久 | 在线观看超碰 | japanese强行粗暴 | 北岛玲av | 最新中文字幕免费视频 | 一级黄色片毛片 | 久久女同互慰一区二区三区 | 一个人在线观看www软件 | 一级片黑人| 国产超碰人人爽人人做人人爱 | 日本在线免费观看视频 | 插插看 | 免费在线看黄的网站 | 51免费看成人啪啪片 | 极品美妇后花庭翘臀娇吟小说 | www.男人天堂 | 国产又黄又大又爽 | 98在线视频 | 美女扒开腿让男人捅 | 色呦呦视频在线 | 一二三不卡| 韩国三级hd中文字幕叫床浴室 | 国产13页 | 97伊人超碰 | 少妇高潮惨叫久久久久 | 久久精品国产99国产精品 | 免费观看日本 | 日韩无套| 日韩精品一区二区亚洲av观看 | 国产色爽 | 亚洲影视精品 | 国产二三区 | 久草精品视频在线观看 | 中文av在线播放 | 综合伊人av| 成人不卡在线 | 交视频在线播放 | 视频一区二区在线播放 | 麻豆亚洲精品 | 手机看片欧美日韩 | 精品少妇久久久 | 国产精品美女久久久久久久久 | а天堂中文在线官网 | 中国黄色一级视频 | wwwxxxx日本 | 超碰人人人人人人 | 国产一区二区激情 | 亚洲妇熟xx妇色黄蜜桃 | 成年人视屏 | 91亚洲视频在线观看 | 亚洲天堂无吗 | 天堂av资源网 | 欧美美女在线观看 | av视觉盛宴 | 久久久精品999 | 国产成人精品亚洲日本在线观看 | 欧美极品少妇xxxxⅹ裸体艺术 | 免费在线看黄网站 | 999国产精品视频免费 | 日本天堂免费a | www网站在线观看 | 日本午夜激情 | 成在人线av | 日本国产在线观看 | 亚洲精品视频在线播放 | 日韩污视频在线观看 | 91中文字幕在线 | 亚洲一区二区在线 | 日韩精彩视频 | 国产亚洲欧美日韩精品 | 日韩高清在线一区 | av影片在线观看 | 一区av在线 | 韩国午夜av | 国产第一草草影院 | 成人性生活毛片 | 日韩亚洲欧美中文字幕 | 成人性生交大片免费看中文 | 精品欧美久久 | 超碰人人搞 | 99视频在线免费 | www.sesehu.com| 国产成人精品在线视频 | 韩日中文字幕 | 精品乱人伦一区二区三区 | 人人做人人爱人人爽 | 国产精品黑人一区二区三区 | 国产成人无遮挡在线视频 | 女生毛片| 午夜电影一区二区三区 |