当前位置: 首页 > news >正文

牛客周赛96补题 D F

D 数学

已知有两根,用韦达公式

  • x 2 − p x + q = 0 → x 1 + x 2 = p , x 1 x 2 = q x^2-px+q=0\rightarrow x_1+x_2=p,x_1x_2=q x2px+q=0x1+x2=p,x1x2=q
  • x 1 + x 2 + x 1 x 2 + 1 = p + q + 1 = k + 1 → ( x 1 + 1 ) ( x 2 + 1 ) = k + 1 x_1+x_2+x_1x_2+1=p+q+1=k+1\rightarrow (x_1+1)(x_2+1)=k+1 x1+x2+x1x2+1=p+q+1=k+1(x1+1)(x2+1)=k+1

赛时舍近求远去推了一大堆求根公式…

void solve()
{int k;cin>>k;for(int i=1;i*i<=(k+1);i++){if((k+1)%i==0){int j=(k+1)/i;int a=i-1,b=j-1;if(a>0&&b>0){cout<<a+b<<' '<<a*b<<endl;return;}}}cout<<-1<<endl;
}

F 构造 异或和

  • a i , j a_{i,j} ai,j R 2 、 L 2 R_2、L_2 R2L2都被异或进去了,所以 ⨁ i = 1 m R i ⊕ ⨁ j = 1 n C j = 0 \bigoplus\limits_{i=1}^m R_i\oplus\bigoplus\limits_{j=1}^n C_j=0 i=1mRij=1nCj=0
    在这里插入图片描述
  • R、C是n+m的排列,根据前缀异或和性质,下有打表
    • p % 4 = 1 , ⨁ x = 1 p x = 1 p\%4=1,\bigoplus\limits_{x=1}^p x=1 p%4=1,x=1px=1
    • p % 4 = 2 , ⨁ x = 1 p x = p + 1 p\%4=2,\bigoplus\limits_{x=1}^p x=p+1 p%4=2,x=1px=p+1
    • p % 4 = 3 , ⨁ x = 1 p x = 0 p\%4=3,\bigoplus\limits_{x=1}^p x=0 p%4=3,x=1px=0
    • p % 4 = 0 , ⨁ x = 1 p x = p p\%4=0,\bigoplus\limits_{x=1}^p x=p p%4=0,x=1px=p
  • 可以确定合法条件:(n+m)%4==3
    在这里插入图片描述
  • 构造:
    • p ⊕ 0 = p p\oplus0=p p0=p,先构造1~n-1,n+1~n+m-1部分
    • a n , m a_{n,m} an,m,利用 p ⊕ p = 0 p\oplus p=0 pp=0 0 = ⨁ x = 1 p x , p % 4 = 3 0=\bigoplus\limits_{x=1}^p x,p\%4=3 0=x=1px,p%4=3的性质,凑出 a n , m a_{n,m} an,m
      在这里插入图片描述
void solve()
{//打表代码// int x=0;// forr(i,1,16){//     x^=i;//     cout<<i<<' '<<x<<endl;// }int n,m;cin>>n>>m;if((n+m)%4!=3)return cout<<-1<<endl,void();vector<vector<int> >a(n+1,vector<int>(m+1,0));forr(i,1,n-1){a[i][m]=i;}forr(j,1,m-1){a[n][j]=n+j;a[n][m]^=(n+j);}// cout<<a[n][m]<<endl;a[n][m]^=n;forr(i,1,n){forr(j,1,m)cout<<a[i][j]<<' ';cout<<endl;}
}

相关文章:

  • 机器学习第八讲:向量/矩阵 → 数据表格的数学表达,如Excel表格转数字阵列
  • 数据集-目标检测系列- 杨桃 数据集 Starfruit>> DataBall
  • 深入学习Zookeeper的知识体系
  • KV cache 缓存与量化:加速大型语言模型推理的关键技术
  • RobotxR1:通过闭环强化学习在大语言模型上实现具身机器人智能
  • c++ 基于范围的for循环
  • keepalived+lvs
  • uniapp+vue3+uview来开发我们的项目
  • mysql常用方法
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】金融风控分析案例-10.3 风险指标可视化监控
  • Stapi知识框架
  • 在服务器排查java某个线程导致CPU飙高教程
  • 软件I2C
  • MCP-RAG 服务器:完整设置和使用指南
  • 图片的require问题
  • 前端工程化:从 Webpack 到 Vite
  • React+Webpack 脚手架、前端组件库搭建
  • 华为鸿蒙电脑能否作为开发机?开发非鸿蒙应用?
  • 力扣第156场双周赛
  • Angular | 利用 `ChangeDetectorRef` 解决 Angular 动态显示输入框的聚焦问题
  • 微软宣布将裁员3%
  • 四部门:到2025年底,全国行政村5G通达率超过90%
  • 牧原股份子公司与养殖户种猪买卖纠纷案一审胜诉
  • 重庆三峡学院回应“中标价85万设备网购300元”:已终止采购
  • 中拉论坛第四届部长级会议将举行,外交部介绍情况
  • 重庆荣昌区委区政府再设“答谢宴”,邀请800余名志愿者机关食堂用餐