c程序新手 想问问这个问题怎么写?

图片说明

#include
#include
using namespace std;
const int maxn=10002;
int h[maxn];
int w[maxn];
int n,k;
int ans=0;
 int maxx=0;
int solve()
{
    int sum=0;
    for(int i=maxx;i>=1;i--){
        for(int j=0;j             sum=sum+(h[j]/i)*(w[j]/i);
            if(sum>=k){
                    ans=i;
                return ans;
            }
        }
    }
    return 0;
}
int main()
{
   cin>>n>>k;
   for(int i=0;i     cin>>h[i]>>w[i];
    if(h[i]         swap(h[i],w[i]);
    }
    if(h[i]>maxx){
        maxx=h[i];
    }
   }
   cout<<solve()<<endl;
    return 0;
}

#include<stdio.h>
int main() {
    int numbers,min;
    double weight, per = 0.5 / 55;
    printf("Input material weight:");
    scanf("%lf", &weight);
    min = numbers = int(weight / per + 0.5);        //四舍五入
    printf("Chocolate number=%d\n", numbers);
    for (int i = 0; i <= numbers / 11; i++)         //第一遍枚举找巧克力的最小剩余数
        min = (numbers - i * 11) % 24 < min ? (numbers - i * 11) % 24 : min;
    for (int i = 0; i <= numbers / 11; i++) {         //第二遍把等于最小值的情况给输出
        if ((numbers - i * 11) % 24 == min) {
            printf("Little box=%d,big box=%d,rest=%d\n", i, (numbers - i * 11) / 24, min);
        }
    }
    return 0;
}