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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

four

發布時間:2025/7/14 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 four 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

7月10日

sequence|sequence.in|sequence.out

?

題目描述:

給定一個整數K和長為N的數列{Ai},求有多少個子串(不含空串)的和為K的倍數。(在這里子串表示{A[i]..A[j]},i<=j)

?

輸入格式:

共兩行

第一行 兩個整數N,K

第二行 N個整數表示數列{Ai}

?

輸出格式:

一行一個整數 表示滿足條件的子串的個數

?

樣例輸入:

6 3

1 2 6 3 7 4

?

樣例輸出:

7

?

數據范圍:

20%??? N<=100

對另外20%? K<=100

對所有數據? N<=500000? K<=500000

保證輸入數據中所有數都能用longint保存

?

#include<cstdio> #include<cstring> #include<iostream> #define PROC "sequence" using namespace std; const int MAXN = 500000+5; int x,n,k; int a[MAXN],rest[MAXN]; long long ans = 0; int main() { ??? scanf("%d%d",&n,&k); ??? a[0] = 0; ??????? for (int i = 1;i<=n;i++) ???? { ?????????????????????? scanf("%d",&x); ?????????????????????? int yushu = (x % k+k) %k; ?????????????????????? a[i] = (yushu + a[i-1]%k+k) % k; ??????? } ??????? for (int i = 1;i<=n;i++) ??????? ? rest[a[i]]++; ??????? ans += rest[0]; ???? long long t; ??????? for (int i = 0;i<k;i++) ?????????????? ? if (rest[i]!=0 && rest[i]!=1) ?????????????? ? { ?????????????? ?? t = rest[i]; ?????????????? ?? ans += (t * (t-1)/2); ?????????????? ? } ??????? cout<<ans; ??????? return 0; }

錯因:

1.正解:余數 前綴和組合

做:反應較快 5分鐘

改:沒有注意到500000的平方會超longint

得:注意數據規模 especially 負數 和 計算過程中產生的大數據

2.未完待續

3.未完待續

s��ln�/ `��le='font-size:10.5pt;font-family:"Courier New";color:darkred;mso-ansi-language: FR'>()

{ ??????? ??????? scanf("%d",&n); ??????? for (int i = 1; i<=n; i++) ??????? scanf("%d",&b[i]); ??? sort(b+1,b+n+1); ??? int count = 0,now = b[1]; ??? a[++count] = now; ??? int ans = 0; ??????? for (int i = 2;i<=n;i++) ??????? { ???? if (b[i]!= now) { ?????????????????????? now = b[i]; ?????????????????????? a[++count] = now; ???? } ???? else ans ++; ??? } ???? int max = a[1]; ???? memset(dp, 0x3f3f,sizeof(dp)); ???? for (int i = 1;i<=count;i++) ???? { ??????? dp[a[i]] = 1; ??????? if (a[i]>max)? max = a[i]; ??????? } ??????? for (int i = 1;i<=count;i++) ??????? ? for (int j = 1;j<=max;j++) ??????? ?? { ?????????????????????? int cur = gcd(a[i],j); ?????????????????????? if (dp[cur]>dp[j]+1) dp[cur] = dp[j] + 1; ??????? ?? } ??????? int g = a[1]; ??????? for (int i =2;i<=count;i++) ??????? ? g = gcd(g,a[i]); ??????? printf("%d",count-dp[g]+ans); ??????? return 0; }

錯因:

1.正解:DP: dp[i]表示使得最大公約數是i最小使用多少數。

???????????? 對于每個i枚舉所有數,進行更新。

理由:1.gcd滿足“交換律結合律”。

????? 2. 更新結果與搜索順序無關。

做:審題:誤把gcd當成了最大公因數。

改:no problem

得:縝密審題? 動態思維

2.未完待續

3.未完待續

轉載于:https://www.cnblogs.com/rubylan/p/3836801.html

總結

以上是生活随笔為你收集整理的four的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产一级免费观看 | 国产精品无码一区二区无人区多人 | 欧美怡红院一区二区三区 | aaaaa级少妇高潮大片免费看 | 亚洲va欧美va国产综合久久 | 少妇搡bbbb搡bbbb | 99久久婷婷国产综合精品 | 看片一区二区 | 成年人看的黄色片 | 亚洲香蕉网站 | 精品一区在线视频 | 久久久激情网 | 日韩三级国产精品 | 国产精品99久久久久久久久久久久 | 亚洲熟女乱色一区二区三区 | 伊人www| 国产午夜福利精品 | 青娱乐国产在线视频 | 欧美精品一区在线 | 狠狠操综合网 | 午夜精品久久久久久久99老熟妇 | 国产亚洲精品久久久久婷婷瑜伽 | 91超碰在线免费观看 | 91爱爱网 | 亚洲AV无码片久久精品 | 国产在线免费观看 | 成人网战| 综合五月婷| 美女裸体跪姿扒开屁股无内裤 | 国产人妖av | 你懂的在线观看视频 | 国产精品玖玖玖 | 精品成人网 | 国产伦理久久精品久久久久 | 国产精品后入内射日本在线观看 | 13日本xxxxxⅹxxx20 | 亚洲少妇一区二区三区 | 一级香蕉视频在线观看 | 奇米狠狠去啦 | 亚洲一级精品 | 日韩中文电影 | 色偷偷亚洲 | 日本三级精品 | 国产精品久久77777 | 艳妇臀荡乳欲伦交换在线播放 | 美女久久视频 | 92av视频| 精品久久久久久中文字幕 | 欧美日韩国产综合在线 | 日韩少妇诱惑 | 极品少妇xxxx精品少妇 | 黑人3p波多野结衣在线观看 | 欧美狠狠 | 中文字幕乱码无码人妻系列蜜桃 | 国产在线观看中文字幕 | 黑森林福利视频导航 | 成人区人妻精品一区 | 久久艹影院 | 日本午夜精品理论片a级app发布 | 成人高潮片 | 2022av视频| 日韩欧美的一区二区 | 亚洲成人午夜在线 | 96精品视频在线观看 | 亚洲无吗av | 中文字字幕第183页 欧美特级一级片 | 永久免费看mv网站入口亚洲 | 国产精品永久久久久久久久久 | 91中文国产| 欧美大波大乳巨大乳 | 黄色片aaaa | 国产超碰自拍 | 国精产品一品二品国精品69xx | 黄污视频在线观看 | 开心激情五月婷婷 | 伊人中文网 | 国产免费色视频 | 狠狠操狠狠插 | 天天操欧美 | www.操操操 | 欧美鲁鲁 | 免费看美女隐私网站 | 欧美日韩不卡在线 | 日本福利视频导航 | 欧美 日韩 国产 成人 在线观看 | 日出白浆视频 | 人妻洗澡被强公日日澡电影 | 岛国av中文字幕 | 蜜色影院| 五月天丁香视频 | 制服 丝袜 综合 日韩 欧美 | 奇米四色网 | 久久人人插 | 日韩第一页在线 | 91视频区| 99草视频 | 91老师片黄在线观看 | 男女男精品网站 | 成人免费xxxxx在线观看 |