金庫
题意翻译
# 题目描述
有一个布娃娃。因为布娃娃很重要,所以要把它锁在金库里。
金库是拨号式密码锁,有从-100到100的整数值的刻度。指针最初在0刻度处。
指针在0的状态开始,把指针对准A的位置后,再调至B的位置,再回到0的位置就可以打开。若在将指针对准A位置之前,指针某时恰好与B的位置相吻合,在这种情况下也需要将指针对准A的位置之后再次配合B的位置。
指针所指的值只能每次改变1。但是,针在指向-100的状态时,针所指的值不可能减少,针在指向100的状态时,针所指的值不可能增加。
另外,每次针所指的值发生1个变化时,声音就会响1次。例如,针指向0时转至指向5后,声音会响5次。
因为我讨厌金库的鸣响声音,所以我不想多发出声音,所以想知道声响的次数的最小值。
# 输入输出格式
## 输入格式:
输入用以下的标准形式给予。
```cpp
$ A $
$ B $
```
第1行,给予最初应配合的整数A(-100≤A≤100)。
第2行,给予接下来应配合的整数B(-100≤B≤100)。
A≠0,B≠0,A≠B。
## 输出格式:
把声响次数最小值输出到1行。**在输出的末尾也要进行改行。**
# 说明
## 【样例说明】
对于样例一,针所指的整数是0→1→2→3→4→5→4→3→2→1→0→-1→-2→-1→0,声响次数的最小值是14次。
对于样例二,会出现移动指针时先遇到B位置的情况。
题目描述
[problemUrl]: https://atcoder.jp/contests/code-thanks-festival-2015-open/tasks/code_thanks_festival_2015_a
あなたはぬいぐるみを持っています。ぬいぐるみは大切なので鍵をかけて金庫に保管しています。
金庫はダイヤル式で、$ -100 $ から $ 100 $ までの整数値の目盛りが書かれています。最初 $ 0 $ に針が合わせられています。
金庫は針が $ 0 $ にある状態から始めて、針を $ A $ の位置に合わせた後、$ B $ の位置に合わせて、再び $ 0 $ の位置に合わせることで開けることができます。針を $ A $ の位置に合わせる前に針を $ B $ の位置に合わせることはできますが、この場合でも針を $ A $ の位置に合わせた後に再び $ B $ の位置に合わせる必要があります。
針が指す値は $ 1 $ ずつしか変化させることができません。ただし、針が $ -100 $ を指している状態で針が指す値をさらに減らすこと、針が $ 100 $ を指している状態で針が指す値をさらに増やすことはできません。
また、針が指す値を $ 1 $ つ変化させる度に音が $ 1 $ 回鳴ります。例えば針が $ 0 $ を指している状態から $ 1 $ ずつ針が指す値を増やしていって針が $ 5 $ を指すようにした場合には $ 5 $ 回音が鳴ります。
あなたは金庫が鳴らす音が苦手で、余り音を鳴らしたくないので、音を鳴らす回数として考えられる最小値が知りたいです。
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられる。
> $ A $ $ B $
- $ 1 $ 行目には、最初に針を合わせるべき整数 $ A\ (-100\ ≦\ A\ ≦\ 100) $ が与えられる。
- $ 2 $ 行目には、次に針を合わせるべき整数 $ B\ (-100\ ≦\ B\ ≦\ 100) $ が与えられる。
- $ A $ ≠ $ 0 $, $ B $ ≠ $ 0 $, $ A $ ≠ $ B $ である。
输出格式
音を鳴らす回数として考えられる最小値を $ 1 $ 行に出力せよ。出力の末尾にも改行を入れること。
输入输出样例
输入样例 #1
5
-2
输出样例 #1
14
输入样例 #2
4
3
输出样例 #2
8
输入样例 #3
-40
-91
输出样例 #3
182
说明
### Sample Explanation 1
針が指す整数を $ 0 $ → $ 1 $ → $ 2 $ → $ 3 $ → $ 4 $ → $ 5 $ → $ 4 $ → $ 3 $ → $ 2 $ → $ 1 $ → $ 0 $ → $ -1 $ → $ -2 $ → $ -1 $ → $ 0 $ と移動させることで音を鳴らす回数を $ 14 $ 回に抑えることができます。
### Sample Explanation 2
先に $ B $ で指定された値に針が一致することもあります。