(ファイルIO):入力:div.in出力:div.outの
制限時間:1000ミリ秒のスペースの制約:131072キロバイト特定の制限
後藤ProblemSet
タイトル説明
村長にヤギの年は、ティーチ子羊に学習を開始します
わずか4つの演算を学習言語。市長は、ボード上の2つの整数を書きました
及び
、持っている子羊を尋ねました
ヒツジ、均等に分割
ヒツジ村、各番号に割り当てられた村の羊は同じである必要があり、最大数の分布はどのくらいですか?ラムは、村の羊に割り当てられた各回答を得ることが速かったです
匹のラットを持っています
羊は注文のみを配置することができます。市長は、ホワイトボードに書きました
。はい、これは
(割り切れる)の使用を!
彼らは子羊割り切れる操作を習得するかどうかをテストするためには、市長は、子羊は、2つの異なるホワイトボードから任意の番号を選択交代要求し、多数の結果がボード上に存在しない場合は、あなたが値を書き込む、小数で割り切れますホワイトボード上。前に見たことがないことができませんでした子羊までの整数。
このクラスは、彼らのコンピューティングパワー子羊の行使、これに限定され、教室の時間ですが。授業時間を制御するためには、市長が知りたい、現在のホワイトボード上の数字によると、最終的にはボード上のいくつかの数字があるでしょうか?今、私は彼がすぐにそれを計算するプログラムを書くために頼みます!
入力
整数最初の行を
、ホワイトボード上の現在現れるの整数を表します。
二行目
整数は、それぞれの数が異なっていることを保証するために、ボード上の現在の数を表す、スペースで区切られました。
出力
出力最終デジタルホワイトボードの数を表す整数。
サンプル入力
[1]入力サンプル
2
16 3
サンプル入力[2]
。3
。17 1 2
サンプル出力
[出力1]サンプル
4
[2]出力例
5
データ範囲の制限
データの%、
。
データの%、
。
ヒント
[サンプル
説明]
選択
及び
、書き込み
;選択
と
、書き込み
;合計
、4つの整数。
サンプル2 [説明]
選択
及び
、書き留め
、次に選択
と
、書き留め
;合計
、5の整数。
問題解決のためのアイデアの
データが小さい場合、あなたはデジタルメモリが発生したバレルを開くことができ、それは暴力のn ^ 2のxを列挙することが可能であり、yはバケツにもう一度、結果を値を導出しました。xが/ yがxより若くなければならないので、その結果、最終的な集計すべての数値を得ることが可能です。
コード
#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<algorithm>
#include<iomanip>
#include<cmath>
using namespace std;
int n,a[105],f[105],ans;
int main(){
freopen("div.in","r",stdin);
freopen("div.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
f[a[i]]=1;
}
for(int i=100;i>=1;i--)
{
if(f[i])
{
for(int j=i-1;j>=1;j--)
if(f[j])
f[i/j]=1;
}
}
ans=0;
for(int i=1;i<=100;i++)
if(f[i]==1)
ans++;
printf("%d",ans);
}