#include <bits/stdc++.h>
#define Aint(vec) vec.begin(), vec.end()
#define rep(i, n) for (int i = 0; i < n; ++i)
#define repc(bit, k, n) for (int bit = (1 << k) - 1; bit < (1 << n); bit = next_combination(bit))
#define repi(itr, vec) for (auto itr = vec.begin(); itr != vec.end(); ++itr)
#define lb(bec, val) lower_bound(Aint(bec), val)
using namespace std;
using pii = pair<int,int>;

void uniq(vector<int> &vec)
{
  sort(vec.begin(), vec.end());
  vec.erase(unique(vec.begin(), vec.end()), vec.end());
  return;
}
vector<pii> factorize(int n)
{
  vector<pii> ret;
  for (int i = 2; i * i <= n; i++)
  {
    int temp = 0;
    while (n % i == 0)
    {
      temp++;
      n /= i;
    }
    if (temp != 0)
      ret.push_back(make_pair(i, temp));
  }
  if (n > 1)
    ret.push_back(make_pair(n, 1));
  return ret;
}
int po(int a, int n){
  int ret =1,temp= a;
  while(n>0){
    if(n&1)ret*=temp;
    temp = temp*temp;
    n>>=1;
  }
  return ret;

}
int bs(pii p, const vector<int> &vec){
  int YES = 0;
  int NO = p.second+1;
  while(NO-YES>1){
    int temp = (YES+NO)/2;
    int cur = po(p.first, temp);
    bool yes = true;
    repi(itr, vec){
      if((*itr)%cur){
        yes = false;
        break;
      }
    }
    if(yes)YES = temp;
    else NO = temp;

  }
  return YES ;
}

int main()
{
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  int n;cin>>n;
  vector<int>vec(n);
  rep(i,n)cin>>vec[i];
  uniq(vec);
  auto fac = factorize(vec.front());
  int ans = 1;
  repi(itr, fac){
    ans *= po((*itr).first, bs(*itr, vec));
  }
  cout<<ans<<endl;

  return 0;
}
#include<bits/stdc++.h>
using namespace std;
typedef unsigned long long ll; 
#define endl '\n'
#define sf(n) scanf("%d",&n);
#define pf(n) printf("%d\n",n);
#define fast_io ios_base::sync_with_stdio(0); cin.tie(0)
int main()
{
	fast_io;
	int a,b;
	cin >> a >> b;
	double ans = 0;
	ans  = double(a)/100 * double(b);
	cout << ans << endl;
	return 0;
}