博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
妈妈的考试
阅读量:4337 次
发布时间:2019-06-07

本文共 2075 字,大约阅读时间需要 6 分钟。

链接:

 初步判断w1与题目的对错顺序无关,而和题目的对错个数有关。于是计算(s1+s2+……+sn)后可以发现 s13+s23+……+sn是等于w0的,而各项平方之和是等于n的,同时存在6×w1,于是就可以得到w1=  (w03  + w0( 2 - 3n ) ) / 6,对右边求导得到3w0+( 2 - 3 * n ) ,于是求零点即可。对于第一问,列出不等式并根据同号得正的方法分类讨论一下,求出端点(三个),然后在+-5的范围内取符合条件的极值,但是需要注意取值必需与n同奇偶,并在-n与n之间。对于第二问把求导取得的零点中负的那个按+-5范围求值取符合条件的极值即可。+-5的操作是为了防止卡精度,然后注意一下开int128。各种小细节没注意让我WA了好几发。

#include
#include
#define rep(i,j,k) for(int i=j;i<=k;i++)#include
#include
using namespace std;typedef __int128 ll; template
inline T in(T &x){ char c11=getchar(),ob=0;x=0; while(c11^'-'&&!isdigit(c11))c11=getchar();if(c11=='-')c11=getchar(),ob=1; while(isdigit(c11))x=x*10+c11-'0',c11=getchar();if(ob)x=-x;return x;} ll sqrt(ll x){ ll l=0,r=2000000000,mid; while(l!=r) { mid=((l+r)>>1)+1; if(ll(mid)*mid<=x) l=mid; else r=mid-1; } return l;} ll g(ll w0,ll n){
return (w0*w0*w0+w0*(2-3*n))/6;} void out(ll xx){
if(xx){
out(xx/10);putchar(xx%10+'0');}} void kw0(ll n){ ll a=sqrt(3*n-2); ll ans=9000000000000000000,tp; for(ll i=a-5;i<=a+5;i++){ if(i>=-n&&i<=n&&(n-i)%2!=1){ tp=g(i,n); if(tp<=0) continue; ans=min(ans,tp); } } a=-a; for(ll i=a-5;i<=a+5;i++){ if(i>=-n&&i<=n&&(n-i)%2!=1){ tp=g(i,n); if(tp<=0) continue; ans=min(ans,tp); } } a=0; for(ll i=a-5;i<=a+5;i++){ if(i>=-n&&i<=n&&(n-i)%2!=1){ tp=g(i,n); if(tp<=0) continue; ans=min(ans,tp); } } out(ans); printf(" "); return ;} void kw1(ll n){ ll a=(n*3-2)/3,ans=-9000000000000000000; a=-sqrt(a); for(ll i=a-5;i<=a+5;i++){ if(i>=-n&&i<0&&(n-i)%2==0){ ans=max(ans,g(i,n)); } } out(ans); return ;} int main(){ int T; ll n; in(T); rep(i,1,T){ in(n); kw0(n); kw1(n); putchar(10); } return 0;}

 

转载于:https://www.cnblogs.com/ieqefcr/p/10851093.html

你可能感兴趣的文章
文档工具GitBook使用
查看>>
两个链表的第一个公共节点
查看>>
知道这20个正则表达式,能让你少写1,000行代码
查看>>
MariaDB 主从同步与热备(14)
查看>>
推荐的 CSS 书写顺序
查看>>
NIO:与 Buffer 一起使用 Channel
查看>>
Android帧缓冲区(Frame Buffer)硬件抽象层(HAL)模块Gralloc的实现原理分析
查看>>
Android - 广播机制和Service
查看>>
MFC接收ShellExecute多个参数
查看>>
volatile和synchronized的区别
查看>>
RocketMQ介绍与云服务器安装
查看>>
【无向图欧拉回路判定】欧拉回路
查看>>
几款在线脑图制作工具
查看>>
应用:udp聊天器
查看>>
台式机没有声音
查看>>
[Arduino]利用Arduino Leonardo开发板制作BadUSB,劫持键盘...嘿嘿嘿
查看>>
[软件工程]团队作业-项目答辩-梅花桩
查看>>
Groovy 学习手册(4)
查看>>
CentOS7安装Pycharm后无法使用日常的快捷键
查看>>
clouder-manager安装cdh
查看>>