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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

最大公约数 数学,结论 第九届“图灵杯”NEUQ-ACM程序设计竞赛个人赛

發布時間:2025/3/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最大公约数 数学,结论 第九届“图灵杯”NEUQ-ACM程序设计竞赛个人赛 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

鏈接:https://ac.nowcoder.com/acm/contest/27302/I
來源:牛客網

時間限制:C/C++ 1秒,其他語言2秒
空間限制:C/C++ 262144K,其他語言524288K
64bit IO Format: %lld
題目描述
雯雯沉迷學習數學無法自拔,他在閉關修煉中遇到了難題,聰明的你能幫他解答嗎?
現在給你一個NN個數的序列PP,定義XX為這NN個數的最大公因數,你可以進行無限次操作,每次操作選擇一組(L,R)(L,R) ( 1 \le L \neq R \le N,P_L\ge1)(1≤L

?
=R≤N,P
L
?
≥1),使得P_L-1P
L
?
?1且P_R+1P
R
?
+1,每次操作產生新的序列PP。請問所有可能產生的PP對應的XX最多有多少個。AC者可憑RP獲得雯雯簽名照一張。
定義:AA是序列PP的一個公因數當且僅當序列PP的每一個元素都能被A整除,且A\ge1A≥1。
注意:本題規定任何正整數都是0的公因數。

輸入描述:
第一行包含一個數NN,其中2 \le N \le 5002≤N≤500。

第二行為長度為NN的一個序列,其中序列元素PP滿足
1 \le P \le 10^{6}1≤P≤10
6

輸出描述:
輸出包括一個整數,表示所有序列產生的最大公因數的個數。
示例1
輸入
復制
3
1 1 2
輸出
復制
3
說明
第一次操作,L=1,R=2L=1,R=2,操作后P=0,2,2P=0,2,2,此時PP的最大公因數為22。

第二次操作,L=2,R=3L=2,R=3,操作后P=0,1,3P=0,1,3,此時PP的最大公因數為11。

第三次操作,L=2,R=3L=2,R=3,操作后P=0,0,4P=0,0,4,此時PP的最大公因數為44。

經過若干次操作后,序列PP產生的最大公因數為11,22,44,共33個。

思路 :

  • sumsumsum為整個序列和,易知每次操作,sum都不改變
  • 假設操作后的子序列為aaa,x為最大公因數,則一定存在序列kkk,使得∑ai=x?∑kj\sum{a_i}=x*\sum{k_j}ai?=x?kj?
  • 即,sum=x?∑kisum=x*\sum{k_i}sum=x?ki?,由于sum始終不變,因此求最大公因數的不同數量,也就是x的不同數量,等價于sum的因子數量
#include <iostream> using namespace std;int main() {int n; cin >> n;int sum = 0, cnt = 0;for (int i = 1, x; i <= n && cin >> x; i ++ ) sum += x;for (int i = 1; i * i <= sum; i ++ ){if (sum % i == 0){if (i * i == sum) cnt ++ ;else cnt += 2;}}cout << cnt << endl; }

總結

以上是生活随笔為你收集整理的最大公约数 数学,结论 第九届“图灵杯”NEUQ-ACM程序设计竞赛个人赛的全部內容,希望文章能夠幫你解決所遇到的問題。

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