POJ 1840 数学

RK3588 Android12 添加HDMI和喇叭声音通道切换选项 rk3588 android12系统默认接hdmi out时,声音会切换到hdmi out输出,主板声卡喇叭输出会没有声音输出。现在添加一个选项设置hdmi out时,声音可以保持主板声卡喇叭输出。 阅读详情

Eqs
Time Limit: 5000MS Memory Limit: 65536K
Total Submissions: 12182 Accepted: 5951

Description

Consider equations having the following form: 
a1x1 3+ a2x2 3+ a3x3 3+ a4x4 3+ a5x5 3=0 
The coefficients are given integers from the interval [-50,50]. 
It is consider a solution a system (x1, x2, x3, x4, x5) that verifies the equation, xi∈[-50,50], xi != 0, any i∈{1,2,3,4,5}. 

Determine how many solutions satisfy the given equation. 

Input

The only line of input contains the 5 coefficients a1, a2, a3, a4, a5, separated by blanks.

Output

The output will contain on the first line the number of the solutions for the given equation.

Sample Input

37 29 41 43 47

Sample Output

654

Source



题目链接:http://poj.org/problem?id=1840


题意就是给出5个系数,求使等式成立的可能个数,注意等式中x不是一定都相同的



看完别人的题解,感觉自己真的好傻,我想到的是4重循环,想不到别人用三重循环


思路:

  原试子变形就是a1x13+ a2x23+ a3x33=( a4x43+ a5x53),用两个循环,一个求左边,一个求右边(因为4重循环超时),

对于数据,看到别人用的  25000000,这有技巧的,第一次算右边的,最大就是50^4*2=12500000,乘以2因为可能是负数,

而负数数组不能存储,所以当是负数的时候就+25000000,这里我强调一下,-1+N 不是等于1     !!!!!刚才纠结了一下

,还有大牛们说用int  会超类存,用short,具体看代码吧



#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
#define N 25000000

short a[N];

int main()
{
    int b[5],i,j,k,s;

    scanf("%d%d%d%d%d",&b[0],&b[1],&b[2],&b[3],&b[4]);
    {
        for(i=-50;i<=50;i++)
        {
            if(i==0) continue;

            for(j=-50;j<=50;j++)
            {
                if(j==0)  continue;

                k=i*i*i*b[0]+j*j*j*b[1];
                
                if(k<0)  //负数不能存储
                    k+=N;
                    
                a[k]++; 
            }
        }


        int ans=0;

        for(i=-50;i<=50;i++)
        {
            if(i==0)  continue;

            for(j=-50;j<=50;j++)
            {
                if(j==0)  continue;

                for(k=-50;k<=50;k++)
                {
                    if(k==0)  continue;

                    s=i*i*i*b[2]+j*j*j*b[3]+k*k*k*b[4];
                    if(s<0) s+=N;
                    
                    ans+=a[s];
                }
            }
        }

        printf("%d\n",ans);
    }
    return 0;
}








华为OD机试新系统真题【字符串压缩编码】 华为OD机试 新系统真题【字符串压缩编码】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【字符串压缩编码】多语言题解 阅读详情

相关推荐

记录——影刀RPA高级操作题(二)——使用影刀RPA内置包和”Xpath“获取数据,获取数据写入目标MySQL

【代码】记录——影刀RPA高级操作题(二)——使用影刀RPA内置包和”Xpath“获取数据,获取数据写入目标MySQL。

m0_74824002的博客 842

POJ 1840 - Eqs(数学)

题目: http://poj.org/problem?id=1840 题意: 给出一个5元3次方程,输入其5个系数,求它的解的个数. 其中系数 ai∈[-50,50]  自变量xi∈[-50,0)∪(0,50] 思路: 简单暴力肯定超时的了, 暴力枚举要5层循环. 看了题解~ 原来要将方程变形: a1*x1^3 + a2*x2^3 + a3*x3^3 + a4 * x4^3 + a5*

Halo 755

一个完整的c#股票分析软件源码

完整的c#股票分析软件源码

qq_35600909的博客 4595

poj 1840 (数学)

点击打开链接 政府对称,注意0的情况。。。 #include #include short mark1[25000001]; int main() { int a[105]; int b[5]; int i,j; j=0; int temp; for(i=-50;i<=50;i++) { if(i==0)continue; a[j]=i*i*i;

hello_fei 881

解决/usr/lib64/libstdc++.so.6和/lib64/libc.so.6版本过低问题

在CentOS7.0中编译好MySQL5.7.14之后,然后在CentOS6.5中初始化MySQL,执行:/usr/local/mysql/bin/mysqld --version出现如下问题:./bin/mysqld: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./bin/mysqld)

poxiaonie的博客 2万+

IFRS 9与CECL对比解析:跨国企业财务必须掌握的两种信用损失模型

本文深度解析IFRS 9与CECL两种信用损失模型的差异,帮助跨国企业应对财务合规挑战。从基础架构、数据治理到监管策略,详细对比三阶段模型与单一阶段模型的核心区别,并提供实施双轨制的实务建议,助力企业优化资本管理和税务筹划。

3c4x5z6v7b的博客 668

POJ1840 Eqs(哈希)

地址链接http://poj.org/problem?id=1840 a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0等价于 a1x13+ a2x23+ a3x33=a4x43+ a5x33 所以使用哈希储存前三项的值,而数组开到101^3=1030301就够了 有几个需要注意的地方就是x不能等于0(应为这个我纠结了好久,所以看题啊啊~~); 然后就是求解的个数...

weixin_30776545的博客 101

告别瞎猜!用通达信L2资金流向函数,手把手教你识别主力动向(附实战公式)

本文详细解析通达信L2资金流向函数,手把手教你构建主力动向监控系统。通过分档数据解析、委买委卖攻防解读及实战公式应用,帮助投资者精准识别主力建仓与虚假拉升信号,提升股票交易决策效率。

weixin_26908317的博客 2075

poj_1840

源地址:http://poj.org/problem?id=1840 用下map就行。我们先处理前两个数,将它们的结果放入map中,然后暴力枚举后三个的结果,看看map中有没有它的相反数即可。 不过这里好像得有一个比较优美的姿势才行。刚开始算一个结果后,都是直接mp[res]++ 或者 ans += mp[res],这样子好像会超时。对于每得到一个数,我们最好先用map.find() 与map

ThinkingLion的专栏 373

用 ADT 连接 SAP S/4HANA Public Cloud 开发租户的完整落地指南

摘要:在SAP S/4HANA公有云中进行ABAP开发时,必须使用Development Tenant(客户端080)而非Customizing Tenant(客户端100)连接ADT工具。开发用户需具备SAP_BR_DEVELOPER角色且写权限不受限,开发对象应创建在结构包的子包中。连接前需确认正确的ABAP服务URL(通常为Launchpad URL去掉"/ui"),并通过运行控制台程序验证全链路功能。典型开发场景如通过BAdI实现业务校验时,需遵循Clean Core原则在指定包

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 336

Skill的嵌套

Skill的嵌套就很简单,直接引用其他的Skill就好了。在一个 Skill 的 SKILL.md 中,可以明确指示 Claude 去读取另一个 Skill 的文档。

Criss@陈磊 956

hash

POJ 1840 Eqs http://poj.org/problem?id=1840 Description Consider equations having the following form:a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0The coefficients are given integers from the interval [-50,...

weixin_33744141的博客 83

S32K144 UDSdoCAN 升级刷写实现笔记

本篇旨在描述如何开发“车规级”的软件升级程序,通过在S32K144平台上实现基于UDSdoCAN的刷写升级功能,带你一步步建立安全升级的“工程思维”,在这里既能收获经验还能获得工程源码、测试脚本,助你起飞,避坑提速!

汽车电子软件领域知识分享 811

poj 1840 Eqs (hash)

题目:http://poj.org/problem?id=1840 题解:http://blog.youkuaiyun.com/lyy289065406/article/details/6647387小优姐讲的很好了 1 #include<cstdio> 2 #include<string> 3 #include<iostream> 4 #in...

weixin_30770495的博客 85

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

POJ1840——哈希——Eqs

http://poj.org/problem?id=1840 /* */ /************************************************ * Author :Powatr * Created Time :2015-9-1 16:03:34 * File Name : *******************...

dgjm4087的博客 160

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

【POJ1840】Eqs

哈希

sdfzchy的博客 400

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

POJ 1840 Eqs.cpp 【 Hash 】

题意: 给出一个不等式a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 问满足方程的 x1 x2 x3 x4 x5有多少个可能取值 输入a1 a2 a3 a4 a5 输出可能取值 思路: 如果暴力 那么就是 100^5了~肯定会超时 所以..其实想要等式成立..则a3x33+ a4x43+ a5x53 = -(a1x13+ a2x23) 可以先求出等式左边的值...

weixin_30505485的博客 78

POJ 1840 HASH

题目链接:http://poj.org/problem?id=1840 题意:公式a1x1^3+ a2x2^3+ a3x3^3+ a4x4^3+ a5x5^3=0,现在给定a1~a5,求有多少个(x1~x5)的组合使得公式成立。并且(x1~x5)取值再[-50,50]且不能为0 思路:因为x的值范围比较小,只有100.所以可以先求出 a1x1^3+a2x2^3+a3x3^3. 然后在求 ...

weixin_33785972的博客 123

百练 / 2017研究生推免上机考试 G:Eqs

题目来源:http://poj.org/problem?id=1840----------------------------------------Eqs总时间限制: 5000ms     内存限制: 65536kB描述Consider equations having the following form:a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0The coeff...

da_kao_la的博客 441

POJ 1840 Eqs(哈希)

题目地址:POJ 1840 sad。。。整个比赛期间一直以为是用什么定理或数学公式推导来做。。一直没仔细看。。结果最后5分钟的时候才看到每个元素的数据范围只是【-50,50】。。。算了。。就算看到了也做不出来。。因为会MLE,解决MLE需要把hash数组的定义类型定义成short。。。这我是不可能想出来的。。。。也没遗憾了。。 这题就是先求前两个for循环,将结果用hash数组存起来。再进行后

scf0920 961

hdu 题目1496 Equations , POJ 题目1840 Eqs (整数Hash)

hdu 题目1496 Equations 题目翻译:  给出一个等式  a*x1^2+b*x2^2+c*x3^2+d*x4^2 = 0, a,b,c,d 范围 [-50,50]; x1,x2,x3,x4 范围 [-100,100]; 输入 a,b,c,d; 求使等式成立的x1,x2,x3,x4 的解的数目 分析:暴力枚举:4重循环 O(n^4);  可以将 x1,x2 的

Hanks软件库 1331

POJ-1840 Eqs 解题报告

Description Consider equations having the following form: a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 The coefficients are given integers from the interval [-50,50]. It is consider a solution a system (

我要变强!直到我的名字响彻天堂! 798

POJ 1840.Eqs

题目:http://poj.org/problem?id=1840 AC代码(C++): #include #include #include #include #include #include #include #include #include #define INF 0xfffffff #define MAXN 100005 using namespa

njyexiong的博客 228

POJ1840

题目大意:已知方程a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 ,其中ai的范围在【-50,50】中,xi的范围在【-50,50】中且xi都不为0,(i=1,2,3,4,5)。求在给定a1,a2,a3,a4,a5的值,有多少种使得方程成立的情况即x1,x2,x3,x4,x5有多少种可能的取值。 本题思路:大部分的人看到题后,都会直接枚举x1,x2,x3,x4,x5,

u012484530的专栏 564

1840 poj Eqsa

对于数学表达式,ai,xi的范围[-50,50] 且x不能为0,将表达式变型为 时间复杂度O(10^6) #include using namespace std; int coe[5]; short ans[40000000]; int main(){ int result=0; for(int i=0;i<5;i++) cin>>coe[i]; for(int

Tornado 9013

HDU_1496 Equations && POJ_1840 Eqs(Hash)

  这两题的思路都是将等式化成左右两部分,用一个hash数组,先把左边的结果存起来,然后计算右边的结果直接寻址就行,不过,HDU那道题要注意剪枝,如果系数全为正或者全为负则直接输出0,POJ那道题hash函数定义成char型的,否则会超内存。。 HDU_1496 Equations: #include <iostream>#include <cstring&g...

weixin_30296405的博客 107
上一篇: CF 332 C 贪心
下一篇: POJ 2472 106 miles to Chicago
左眼皮跳跳~
博客等级 码龄13年 17粉丝 400原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值