#30194: C++關於WA(line:3)


ningenwoyamaru (よう女の桜)

學校 : 國立臺中第二高級中學
編號 : 191983
來源 : [36.226.67.84]
最後登入時間 :
2024-09-07 17:44:38
a017. 五則運算 | From: [36.235.181.45] | 發表日期 : 2022-05-06 09:53

要考慮到%,被坑了好多次QQ

 
#30195: Re: C++關於WA(line:3)


ningenwoyamaru (よう女の桜)

學校 : 國立臺中第二高級中學
編號 : 191983
來源 : [36.226.67.84]
最後登入時間 :
2024-09-07 17:44:38
a017. 五則運算 | From: [36.235.181.45] | 發表日期 : 2022-05-06 09:58

要考慮到%,被坑了好多次QQ


順便附上程式碼 (我是用DFS解法)

#include<bits/stdc++.h>

using namespace std;

int solve(int z,int len);

string in;

int main(){    
    while(getline(cin,in)){
        long long int r=solve(0,in.length());
        cout<<r<<endl;
    }
    
}

int solve(int z,int len){
    int a=0;
    for(int i=len-1;i>=z;i--){
        if(in[i] == ')'){
            ++a;
        }
        if(in[i] == '('){
            --a;
        }
        if(in[i] == '+' && a==0){
            return solve(z,i)+solve(i+1,len);
        }
        if(in[i] == '-' && a==0){
            return solve(z,i)-solve(i+1,len);
        }
    }
    for(int i=len-1;i>=z;i--){
        if(in[i] == ')'){
            ++a;
        }
        if(in[i] == '('){
            --a;
        }
        if(in[i] == '*' && a==0){
            return solve(z,i)*solve(i+1,len);
        }
        if(in[i] == '/' && a==0){
            return solve(z,i)/solve(i+1,len);
        }
        if(in[i] == '%' && a==0){
            return solve(z,i)%solve(i+1,len);
        }
    }
    if((in[z]=='(') && (in[len-1]==')')){
        return solve(z+1,len-1);
    }
    if(in[z]==' ' && in[len-1]==' '){
        return solve(z+1,len-1);
    }
    if(in[z]==' '){
        return solve(z+1,len);
    }
    if(in[len-1]==' '){
        return solve(z,len-1);
    }
    long long int num=0;
    if(isdigit(in[z])&&isdigit(in[len-1])){
        for(int i=z;i<len;i++){
            num=num*10+in[i]-'0';
        }
        return num;
    }    
}

 
#30204: Re: C++關於WA(line:3)


s010013@stmail.hhsh.chc.edu.tw (Smith)

學校 : 國立溪湖高級中學
編號 : 174920
來源 : [27.53.32.54]
最後登入時間 :
2022-10-10 09:31:00
a017. 五則運算 | From: [39.13.97.218] | 發表日期 : 2022-05-06 20:30

要考慮到%,被坑了好多次QQ

不好意思,小弟我也卡在這個測資,想問一下大大
考慮到%是甚麼意思?
%的優先程度跟乘除一樣嗎?

 
#30205: Re: C++關於WA(line:3)


s010013@stmail.hhsh.chc.edu.tw (Smith)

學校 : 國立溪湖高級中學
編號 : 174920
來源 : [27.53.32.54]
最後登入時間 :
2022-10-10 09:31:00
a017. 五則運算 | From: [39.13.97.218] | 發表日期 : 2022-05-06 20:44

要考慮到%,被坑了好多次QQ

不好意思,小弟我也卡在這個測資,想問一下大大
考慮到%是甚麼意思?
%的優先程度跟乘除一樣嗎?


我找到問題點了,沒事

 
ZeroJudge Forum