What is wrong in this code

/*

*-----------------------------------------------------------*
|                                                           |
|                                                           |
|               AUTHOR: Himanshu Aswal                      |
|     ( website: himanshu010.github.io/Portfolio_website )  |
|                                                           |
|                                                           |
*-----------------------------------------------------------*

*/

#include<bits/stdc++.h>
#define moduli 998244353
#define int long long int
#define ld long double
#define F first
#define S second
#define P pair<int,int>
#define pb push_back
#define vi vector<int>
#define vvi vector<vector<int>>
#define vb vector<bool>
#define um unordered_map

using namespace std;

void solve(int tc) {
    int i, j, k, n, ans = 0, cnt = 0, sum = 0;
    const int N = 100005;
    n = 1;
    vector<float> prob(N);

    prob[1] = 100;
    i = 2;
    float m;
    cin >> m;
    m *= 100;
    while (prob[i - 1] > m) {
        prob[i] = prob[i - 1] * (365 - i + 1) / 365;
        float same_birthday = 100 - prob[i];
        // cout << same_birthday << endl;
        i++;
        n++;

    }
    cout << n << endl;

}


int32_t main()
{
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif

    ios_base:: sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);
    // int t;cin>>t;while(t--)
    {
        int tc = 1;
        solve(tc);
        tc++;
    }
}

@himanshu_aswal
What have you done here? please explain your logic. Also save your code at ide.codingblocks.com and then share the link of code here

I hope I’ve cleared your doubt. I ask you to please rate your experience here
Your feedback is very important. It helps us improve our platform and hence provide you
the learning experience you deserve.

On the off chance, you still have some questions or not find the answers satisfactory, you may reopen
the doubt.