- 921. Minimum Add to Make Parentheses Valid 使括号有效的最少添加
- 915. Partition Array into Disjoint Intervals 分割数组
- 932. Beautiful Array 漂亮数组
- 940. Distinct Subsequences II 不同的子序列 II
题目地址:https://leetcode.com/problems/solve-the-equation/description/
Solve a given equation and return the value of x in the form of string "x=#value". The equation contains only '+', '-' operation, the variable x and its coefficient.
Ifthere is no solution for the equation, return "No solution".
Ifthere are infinite solutions for the equation, return "Infinite solutions".
Ifthere is exactly one solution for the equation, we ensure that the value of x is an integer.
Example 1:
Input: "x+5-3+x=6+x-2"
Output: "x=2"
Example 2:
Input: "x=x"
Output: "Infinite solutions"
Example 3:
Input: "2x=x"
Output: "x=0"
Example 4:
Input: "2x+3x-6x=x+2"
Output: "x=-1"
Example 5:
Input: "x=x+2"
Output: "No solution"
求解一元线性方程,求得时候注意是否有解或者无穷解等条件。
这种题本质都是用python实现一个数学操作,本身并不难,但是很烦!
这个题我的做法是先把式子分为左右式,如果式子以负号开头,给它替换成'0-',然后把所有的-换成+,这样的目的是可以直接按照+去split字符串得到每个数字。然后判断数字是否包含x呀,来求出左边的x的数目,左边数字的和,右边x的数目,右边数字的和。底下实现所谓的移动分式,把x都移到左边,把数字都移动到右边。最后再根据题目的要求求解或者返回特殊情况即可。
class Solution(object):
def solveEquation(self, equation):
"""
:type equation: str
:rtype: str
"""
left, right = equation.split('=')
if left[0] == '-':
left = '0' + left
if right[0] == '-':
right = '0' + right
left = left.replace('-', '+-')
right = right.replace('-', '+-')
left_x, left_val, right_x, right_val = 0, 0, 0, 0
for num in left.split('+'):
if 'x' in num:
if num == 'x':
left_x += 1
elif num == '-x':
left_x -= 1
else:
left_x += int(num[:-1])
else:
left_val += int(num)
for num in right.split('+'):
if 'x' in num:
if num == 'x':
right_x += 1
elif num == '-x':
right_x -= 1
else:
right_x += int(num[:-1])
else:
right_val += int(num)
left_x -= right_x
right_val -= left_val
if left_x != 0 and right_val == 0:
return "x=0"
elif left_x != 0 and right_val != 0:
return 'x=' + str(right_val / left_x)
elif left_x == 0 and right_val == 0:
return "Infinite solutions"
elif left_x == 0 and right_val != 0:
return "No solution"
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
DDKK.COM 弟弟快看-教程,程序员编程资料站,版权归原作者所有
本文经作者:负雪明烛 授权发布,任何组织或个人未经作者授权不得转发
嗨,我是 Flutter 的新手,我正在尝试了解 block 计时器 In the doc of flutter_bloc我会知道这个构造函数类是什么意思 @immutable abstract cl
更新: 从包含 Swift 4.1 的 Xcode 9.3 开始,数组相等性按预期工作,原始问题中的代码编译没有错误。 但是,请查看已接受的答案,因为它提供了更好、更现代的解决方案。 原题如下: 当我
我收到了一个 100 页的 Latex 文档,其中包含 $$...$$ 之间的所有方程,我需要将它们全部更改为 \begin{equation}...\end{equation} 在 Latex(一些
I have 5 equations and I've to take combination of 3 equations at a time to check if I'm getting
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 10年前关闭。 Improve this
我想在 Modelica 中建模一个显式时间相关的微分方程。 说我想建模 Real x(start=1); der(x) = t; 在 Modelica 中。访问时间变量 t 的正确方法是什么? 最佳
我在 Maxima 中有一个微分方程组。我正在尝试绘制解决方案。 diff_eq1: 'diff(p(t),t) = (5/2 + (3^(1/2))/24 - (5/8)*p(t) - ((3^(1
基本上我只想解决k。请注意,等式等于 1.12 import math from sympy import * a = 1.45 b = 4.1 c = 14.0 al = math.log(a, 2
计算日出/日落时如何考虑观察者海拔? 计算任何纬度/经度的日出/设置是没有问题的,但是如何计算海拔而不是海平面???我已经用完了可以尝试的组合,并且花了三天多的时间来寻求帮助 我正在使用 Paul S
有人能给我一个为什么这不起作用的充分理由吗: let a: [Int]? = [1] let b: [Int]? = nil a == b 这将是我提出的(如果不优雅的话)解决方案。但这是微不足道的,
我正在尝试定义一个符合 Equatable 的测试夹具,以便我可以验证采用协议(protocol)的函数是否按预期执行。我尝试了 3 种不同的排列方式。 import XCTest import My
我确实需要将任何等同的结构/类型/对象传递给此 setEquatable 函数。知道如何解决这个问题吗? public func ==(l: [String: String], r: [String:
这个有效: // Conformance to protocol correctly synthesized by compiler struct MyStruct: Equatable { } 这不
我仍在与 Swift 泛型作斗争。今天我发现如果从泛型类调用我的 Equatable 协议(protocol)实现不起作用。 我的模型类: func ==(lhs: Tracking, rhs: Tr
谁能给我一个很好的理由来说明为什么这不起作用: let a: [Int]? = [1] let b: [Int]? = nil a == b 这将是我提出的(如果不雅)解决方案。但这是微不足道的,所以
题目地址:https://leetcode.com/problems/solve-the-equation/description/ 题目描述: Solve a given equation an
我正在尝试像这样解决这个指数方程: my ($l,$r); for (1 .. 100) -> $x { $l = $x * e ** $x; $r = 5 * (e ** $x -
我正在尝试用这段代码求解方程: a = [-0.0008333 -0.025 -0.6667 -20]; length_OnePart = 7.3248; xi = -6.4446; yi = -16
我正在处理一个说要使用这个 16 位循环冗余校验的设备: CCITT CRC-16 with polynomial x^16 + x^12 + x^5 + x^1 我寻找了这种算法的实现,但我确实只找
我在 hackerrank.com 上的“方程”挑战赛的一些测试用例上遇到了问题。这是问题所在:https://www.hackerrank.com/challenges/equations . 我很
我是一名优秀的程序员,十分优秀!