30分求调
查看原帖
30分求调
1296126
decode_snow楼主2024/11/18 23:15
#include<bits/stdc++.h>
using namespace std;

int n,s[15],b[15];
int sum1,minn,sum2;//sum1:suandu

void dfs(int x){
    int minn2 = abs(s[x]-b[x]);
    for(int i=x+1;i<=n;i++){
        if(abs(sum1*s[i]-(sum2+b[i]))<minn){
            sum1 = sum1*s[i];
            sum2 = sum2+b[i];
            minn2 = abs(sum1-sum2);
        }
    }
    
    minn = min(minn,minn2);
    
    return;
}


int main(){
    cin >> n;
    minn=3112451;
    for(int i=1;i<=n;i++){
        cin >> s[i]; cin >> b[i];
    }
    for(int i=1;i<=n;i++){
        dfs(i);
    }
    cout << minn;
    
    return 0;
}
2024/11/18 23:15
加载中...