質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

686閲覧

偶奇で場合わけ(AGCコンテスト024 A Fairness)

cunwe

総合スコア65

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2020/04/19 02:58

#問題文
高橋君、中橋君、低橋君は、それぞれ整数
A,B,Cを持っています。 以下の操作をK回行った後、高橋君の持っている整数から中橋君の持っている整数を引いた値を求めてください。

3人は同時に、他の 2人の持っている整数の和を求める。その後、自分の持っている整数を求めた整数で置き換える。ただし、答えの絶対値が 10^18を超える場合は、代わりに Unfair と出力してください。

#制約
1≤A,B,C≤10^9
0≤K≤10^18
入力はすべて整数である

#include <bits/stdc++.h> using namespace std; int main(){ int a,b,c,k; cin >> a >> b >> c >> k; if (abs(b-a)>1e18){ puts("Unfair"); } else if (k==0||k%2==0){ cout << (a-b) << endl; } else { cout << (b-a) << endl; } }

としたところWAとなってしましました。テストのために手元で2 3 2 0と入力したところ-1が返ってきて欲しかったのですが0と返ってきたので念のため(不要なはずですが...)k==0||を追記したところ-1が返ってきたのでそれを提出してもWAが返ってきてしまいました。原因がわかる方、よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dodox86

2020/04/19 03:17

過去の他のご質問が、回答を得られているにも関わらず何個も放置されています。まずはそちらを解決されることをお勧めします。
Zuishin

2020/04/19 04:30

解決を先延ばしにしていると、結局何を聞いていたかわからなくなって適当に閉じることになるので、一つ一つ片付けてください。解決していない問題については、質問を編集して詳しく聞きたいところを明確にしてください。
guest

回答1

0

ベストアンサー

kintでは10^18は格納できませんよ。

投稿2020/04/19 03:19

SHOMI

総合スコア4079

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

cunwe

2020/04/20 08:21

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問