#include<bits/stdc++.h>
using namespace std;
#define rep(i, N) for(int i = 0; i < (int)N; i++)
#define all(v) v.begin(), v.end()

bool func(vector<int> x, vector<int> y, int N){
    for(int i = 0; i < N-2; i++){
        for(int j = i+1; j < N-1; j++){
            for(int k = j+1; k < N ; k++){
                if((x.at(j) - x.at(i)) * (y.at(k) - y.at(i)) == (x.at(k) - x.at(i)) * (y.at(j) - y.at(i)))
                    return true;
            }
        }
    }
    return false;  
}
int main(){
    int N;
    cin >> N;
    vector<int> x(N), y(N);
    rep(i, N) cin >> x.at(i) >> y.at(i);
    if(func(x, y, N)) cout << "Yes" << endl;
    else cout << "No" << endl;
}
#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(intt i=0;i<(intt)(n);i++)
#define rept(i,n) for(intt i=1;i<(intt)(n);i++)
#define all(x) (x).begin(),(x).end()
#define siz(s) (s).size()
using intt = int64_t;
using ldou = long double;
intt gcd(intt a,intt b){if(a%b==0){return b;}else{return gcd(b,a%b);}}//最大公約数
intt lcm(intt a,intt b){return a*b/gcd(a,b);}//最小公倍数
intt sum(const long &a,const long &b){return(a+b)*(b-a+1)/2;}//合計
vector<long long>enu(long long N){vector<long long>res;for(long long i=1;i*i<=N;++i){if(N%i==0){res.push_back(i);if(N/i!=i)res.push_back(N/i);}}sort(res.begin(),res.end());return res;}//約数全部
intt sumi(intt n){int x=0;while(n>=10){x+=n%10;n/=10;}x+=n;return x;}//各桁の和
bool sque(long long N){long long r=(long long)floor(sqrt((long double)N));return(r*r)==N;}//平方数
#include <cmath>
bool integ(double x){return std::floor(x)==x;}
void strsort(vector<string>&S){map<int,int>SwapInd;int maxi=0;for(int i=0;i<S.size();i++){if(S[i].size()>maxi)maxi=S[i].size();}for(int i=0;i<maxi;i++){int k=maxi-i;int sort_num=0;for(int j=0;j<S.size();j++){if(S[j].size()>=k){SwapInd[j]=1;sort_num++;}}int swapped=0;for(int j=0;j<S.size();j++){if(SwapInd[j]==1&&j<S.size()-sort_num){if(SwapInd[S.size()-sort_num+swapped]==0){iter_swap(S.begin()+j,S.begin()+S.size()-sort_num+swapped);}else{while(SwapInd[S.size()-sort_num+swapped]!=0){swapped++;if(S.size()-sort_num+swapped>=S.size()){break;}if(S.size()-sort_num+swapped<S.size()){iter_swap(S.begin()+j,S.begin()+S.size()-sort_num+swapped);}}}
     SwapInd[j]=0;SwapInd[S.size()-sort_num+swapped]=0;swapped++;}}vector<string>WhatSorted(sort_num);vector<pair<int,int>>char_and_index(sort_num);for(int j=0;j<sort_num;j++){if(S[S.size()-sort_num+j][k-1]>=65&&S[S.size()-sort_num+j][k-1]<=90){char_and_index[j].first=(int)S[S.size()-sort_num+j][k-1]+32;}else{char_and_index[j].first=(int)S[S.size()-sort_num+j][k-1];}char_and_index[j].second=j;WhatSorted[j]=S[S.size()-sort_num+j];}stable_sort(char_and_index.begin(),char_and_index.end());for(int j=0;j<sort_num;j++){S[S.size()-sort_num+j]=WhatSorted[char_and_index[j].second];}}}
int main() {
cout << fixed << setprecision(20);
int t;
cin>>t;
t+=100;
intt n;
cin>>n;
set<intt> a;
rept(i,101){
     intt x=i*t/100;
     a.insert(x);
}
vector<intt> b;
rept(i,t+1){
     if(a.count(i)){
     }
     else{
          b.push_back(i);
     }
}
intt x,y;
n--;
x=n/siz(b);
y=n%siz(b);/*
if(y==0){
     y+=siz(b)-1;
}
else{
     y--;
}*/
intt ans=x*t+b.at(y);
cout<<ans<<endl;
}