返回列表 發帖

f640. 函數運算式求值

本帖最後由 李知易 於 2024-11-26 22:30 編輯


f640. 函數運算式求值
本帖隱藏的內容需要回復才可以瀏覽
附件: 您需要登錄才可以下載或查看附件。沒有帳號?註冊

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int n()
  4. {
  5.     int x,y,z;
  6.     char c[7];
  7.     cin>>c;
  8.     if(c[0]=='f')
  9.     {
  10.         x=n();
  11.         return 2*x-3;
  12.     }
  13.     else if(c[0]=='g')
  14.     {
  15.         x=n();
  16.         y=n();
  17.         return 2*x+y-7;
  18.     }
  19.     else if(c[0]=='h')
  20.     {
  21.         x=n();
  22.         y=n();
  23.         z=n();
  24.         return 3*x-2*y+z;
  25.     }else
  26.         return atoi(c);
  27. }
  28. int main()
  29. {
  30.     cout<<n();
  31.     return 0;
  32. }
複製代碼
    ⪔〠   

TOP

  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. long long DP[11][61] = {0};
  4. int f()
  5. {
  6.     int x,y,z;
  7.     char t[7];
  8.     cin>>t;
  9.     if(t[0]=='f'){
  10.         x=f();
  11.         return 2*x-3;
  12.     }
  13.     else if(t[0]=='g'){
  14.         x=f();
  15.         y=f();
  16.         return 2*x+y-7;
  17.     }
  18.     else if(t[0]=='h'){
  19.         x=f();
  20.         y=f();
  21.         z=f();
  22.         return 3*x-2*y+z;
  23.     }else{
  24.         return atoi(t);
  25.     }
  26. }
  27. int main()
  28. {
  29.     cout<<f();
  30.     return 0;
  31. }
複製代碼

TOP

返回列表