【ちょっとづつAtCode】ABC182 B – Almost GCD

ちょっとづつAtCoder

引用

(引用)

問題文
数列 A (A1,A2,A3,…,AN)が与えられます。正の整数 k の GCD 度を、A1,A2,A3,…,ANのうち k で割り切れるものの数と定義します。
2 以上の整数のうち GCD 度が最大になるものを一つ求めてください。 GCD 度が最大のものが複数ある場合どれを出力しても構いません。 

制約
1≤N≤100
2≤Ai≤1000
入力は全て整数

入力
入力は以下の形式で標準入力から与えられる。
N A1A2A3…AN

出力
2 以上の整数のうち GCD 度が最大になるものを一つ出力せよ。GCD 度が最大のものが複数ある場合どれを出力してもよい。

AtCoder Beginner Contest182 B – Almost GCDより引用

入力

入力は以下の形式で標準入力から与えられる。

N
A1A2A3…AN

出力

2 以上の整数のうち GCD 度が最大になるものを一つ出力せよ。GCD 度が最大のものが複数ある場合どれを出力してもよい。

入力例 2

5
8 9 18 90 72

出力例 2

9(もしくは2や3)

9で割り切れる個数4 2で割り切れる個数4 3で割り切れる個数4(GCD度4が最大)

考えてみました

入力

N = int(input())
A = [int(x) for x in input().split()]
"2で割り切れるかな?3で割り切れるかな?の個数を別リストにしてみるか"
m = max(A)
ans = 0
B = []
for k in range(2, m + 1):
    cnt = 0
    for i in A:
        if i % k == 0:
            cnt += 1
    B.append(cnt)
print(B.index(max(B)) + 2)

コメント

"+r+""+h+""+">"}var c,i=n(45),u=n(74),f=n(64),s=n(53),p=n(76),l=n(41),y=(n=n(52),"prototype"),h="script",v=n("IE_PROTO"),g=function(){try{c=new ActiveXObject("htmlfile")}catch(r){}var r;g="undefined"==typeof document||document.domain&&c?function(r){r.write(a("")),r.close();var t=r.parentWindow.Object;return r=null,t}(c):((r=l("iframe")).style.display="none",p.appendChild(r),r.src=String("javascript:"),(r=r.contentWindow.document).open(),r.write(a("document.F=Object")),r.close(),r.F);for(var t=f.length;t--;)delete g[y][f[t]];return g()};s[v]=!0,t.exports=Object.create||function(t,e){var n;return null!==t?(o[y]=i(t),n=new o,o[y]=null,n[v]=t):n=g(),e===r?n:u.f(n,e)}},function(r,t,e){var n=e(5),o=e(44),a=e(43),c=e(45),i=e(11),u=e(75);t.f=n&&!o?Object.defineProperties:function(r,t){c(r);for(var e,n=i(t),o=u(t),f=o.length,s=0;s=t||56320!=(64512&i(r,e))))return!1}return!0}})},function(r,t,e){var n=e(91),o=String;r.exports=function(r){if("Symbol"===n(r))throw new TypeError("Cannot convert a Symbol value to a string");return o(r)}},function(r,t,e){var n=e(2),o=e(7),a=e(13),c=e(15),i=e(102),u=(e=e(6),Array),f=a("".charAt),s=a("".charCodeAt),p=a([].join),l="".toWellFormed,y=l&&e((function(){return"1"!==o(l,1)}));n({target:"String",proto:!0,forced:y},{toWellFormed:function(){var r=i(c(this));if(y)return o(l,r);for(var t=r.length,e=u(t),n=0;n
タイトルとURLをコピーしました