蓝桥杯OJ3213【高精度】【计算平方差:考了乘法和减法】

题目:

https://www.lanqiao.cn/problems/3213/learning/https://www.lanqiao.cn/problems/3213/learning/

进度:【五个测试样例只通过四个,剩下的ai也检测不出来,会了80%已经能得好多分了】

可执行代码:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int N=1e3;
int ar[N],ar2[N],br[N],br2[N],cha[N];
int min(int a,int b){
  return a<b?a:b;
}
bool check(int lc,int ld){
  if(lc>ld) return true;
  else if(lc<ld) return false;
  else{
    for(int i=lc-1;i>=0;i--){
      if(ar2[i]<br2[i]) return false;
      else if(ar2[i]>br2[i]) return true;
    }
    return true;
  }
}
void jian(int ar2[],int br2[],int cha[],int& cd){
  memset(cha,0,sizeof(cha));
for(int i=0;i<cd;i++){
if(ar2[i]-br2[i]<0){
  ar2[i+1]--;
  cha[i]=ar2[i]+10-br2[i];
}
else cha[i]=ar2[i]-br2[i];
}
while(cd>1 && cha[cd-1]==0) cd--;
}
main(){
string a,b;cin>>a>>b;
int la=a.size(),lb=b.size(),lc=la+la,ld=lb+lb;
for(int i=0;i<la;i++) ar[i]=a[la-1-i]-'0';
for(int i=0;i<lb;i++) br[i]=b[lb-1-i]-'0';
//先算a2
for(int i=0;i<la;i++){
  for(int j=0;j<la;j++){
    ar2[i+j]+=ar[i]*ar[j];
  }
}
for(int i=0;i<lc;i++){
	ar2[i+1]+=ar2[i]/10;
  ar2[i]=ar2[i]%10;
}
while(lc>1 && ar2[lc-1]==0) lc--;
//再算b2
for(int i=0;i<lb;i++){
  for(int j=0;j<lb;j++){
    br2[i+j]+=br[i]*br[j];
  }
}
for(int i=0;i<ld;i++){
	br2[i+1]+=br2[i]/10;
  br2[i]=br2[i]%10;
}
while(ld>1 && br2[ld-1]==0) ld--;
//将ar2和br2放进去做差
int cd=max(lc,ld);
if(check(lc,ld)) jian(ar2,br2,cha,cd);
else{
  jian(br2,ar2,cha,cd);
  cout<<"-";
}
for(int i=cd-1;i>=0;i--){
 cout<<cha[i]; 
}
  return 0;
}
相关推荐
Nil2083 小时前
leetcode 198打家劫舍
算法·leetcode·职场和发展
熊猫钓鱼>_>9 小时前
面试出现 606 次的第 K 大,被拆成三个问题问
算法·面试·职场和发展·校招·面经·oj·ai生成
职业信用与履历核验知识库9 小时前
职业画像的数据质量与缺失值处理可靠吗?来源、验证与纠错方法
职场和发展
考研保研资料分享11 小时前
北大软微软件工程保研经验:哈工大面试追问与补录风险取舍
面试·职场和发展·软件工程
yuanxi20011 小时前
长鑫科技4F架构突破:技术节点如何改写客户价值判断
职场和发展·创业创新·学习方法
java_nnnn12 小时前
LeetCode刷题滑动窗口(长度最小的子数组)
算法·leetcode·职场和发展
救救孩子把12 小时前
AI面试八股文-01_1-LLM基础概念(Token-上下文窗口-幻觉)
人工智能·面试·职场和发展·llm·token
Nil2081 天前
leetcode 763划分字母区间
算法·leetcode·职场和发展
不会就选b1 天前
算法日常・每日刷题--<动态规划>19
算法·leetcode·职场和发展
考研保研资料分享1 天前
新闻传播保研经验:中传预推免面试、广告学代表作与实习准备(2025)
面试·职场和发展