結果

問題 No.55 正方形を描くだけの簡単なお仕事です。
ユーザー 6soukiti296soukiti29
提出日時 2017-07-31 02:58:15
言語 Nim
(2.0.2)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 1,194 bytes
コンパイル時間 934 ms
コンパイル使用メモリ 65,672 KB
最終ジャッジ日時 2024-06-30 01:55:50
合計ジャッジ時間 1,426 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
/home/judge/data/code/Main.nim(19, 43) Error: type mismatch: got 'seq[int]' for 'map(split(readLine(stdin), {' ', '\t', '\v', '\r', '\n', '\f'}, -1), parseInt)' but expected 'tuple'

ソースコード

diff #

import sequtils,strutils,math

proc `=~`(x,y : float64):bool=
    if abs(x - y) < abs(x) / 1_000_000:
        return true
    else:
        return false


proc length(s1,t1,s2,t2 : int):float64 =
    var
        s = ((s1 - s2) * (s1 - s2)).float64
        t = ((t1 - t2) * (t1 - t2)).float64
    return sqrt(s + t)

var
    x1,y1,x2,y2,x3,y3 : int
    x,y : int
(x1,y1,x2,y2,x3,y3) = stdin.readline.split.map(parseInt)

var flag : bool
var px,py : float64

var
    a = length(x1,y1,x2,y2)
    b = length(x2,y2,x3,y3)
    c = length(x3,y3,x1,y1)

if b < c and a < c:
    if b * b + a * a =~ c * c and a =~ b:
        (px,py) = ((x3 + x1) / 2,(y3 + y1) / 2)
        x = round(px * 2).int - x2
        y = round(py * 2).int - y2
        flag = true
elif b < a and c < a:
    if b * b + c * c =~ a * a and b =~ c:
        (px,py) = ((x2 + x1) / 2,(y2 + y1) / 2)
        x = round(px * 2).int - x3
        y = round(py * 2).int - y3
        flag = true
elif a < b and c < b:
    if a * a + c * c =~ b * b and c =~ a:
        (px,py) = ((x3 + x2) / 2,(y3 + y2) / 2)
        x = round(px * 2).int - x1
        y = round(py * 2).int - y1
        flag = true

if flag:
    echo x," ",y
else:
    echo -1
0