题解 | #矩阵乘法计算量估算#

矩阵乘法计算量估算

http://www.nowcoder.com/practice/15e41630514445719a942e004edc0a5b

#include <stdio.h>
#include <string.h>


//录入矩阵

//右括号与计算次数相匹配
int main(){

int n;
while(scanf("%d",&n)!=EOF){
int edge[n][2];
for(int i=0;i<n;i++){
    scanf("%d %d",&edge[i][0],&edge[i][1]);
}
char str[100];
scanf("%s",str);
int count=0;
int top=-1;
int compute[n][2];
int pos = 0;    
for(int i=0;i<strlen(str);i++){
if(str[i]>='A' && str[i]<='Z'){
    ++top;
compute[top][0]= edge[pos][0],compute[top][1]= edge[pos][1];
    pos++;
}
if(str[i]==')'){
//弹出两个计算 top top-1
count += compute[top-1][0]*compute[top-1][1]*compute[top][1];
compute[top-1][0]= compute[top-1][0];
    compute[top-1][1]= compute[top][1];
top--;
}
}


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


全部评论
这样算不了A(BC)和(A(BCD))这样的类型,还是得递归
1 回复 分享
发布于 2023-04-16 22:44 广东

相关推荐

在评审的大师兄很完美:像这种一般就是部门不匹配 转移至其他部门然后挂掉 我就是这样被挂了
点赞 评论 收藏
分享
牛客963010790号:为什么还要收藏
点赞 评论 收藏
分享
6 1 评论
分享
牛客网
牛客企业服务