⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p1840.cpp

📁 大概POJ上50道比较难的题的代码
💻 CPP
字号:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
vector <long long> h;
int main(){
    long long a[5],po[110];
    long long ans(0);
    for(int i = 0;i < 5;++i) cin >> a[i];
    for(long long i = -50;i <= 50;++i) po[i+50] = i * i * i;
    for(long long i = -50;i <= 50;++i)
        if(i)
            for(long long j = -50;j <= 50;++j)
                if(j) h.push_back(a[0]*po[i+50] + a[1]*po[j+50]);
    sort(h.begin(),h.end());
    a[2] = -a[2]; a[3] = -a[3]; a[4] = -a[4];
    for(long long i = -50;i <= 50;++i)
        if(i)
            for(long long j = -50;j <= 50;++j)
                if(j)
                    for(long long k = -50;k <= 50;++k)
                        if(k){
                            vector<long long>::iterator it;
                            long long temp = po[i+50]*a[2] + po[j+50]*a[3] + po[k+50]*a[4];
                            it = lower_bound(h.begin(),h.end(),temp);
                            for(;it != h.end() && *it++ == temp;) ++ans;
                        }
    cout << ans << endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -