結果

問題 No.49 算数の宿題
ユーザー guricerin
提出日時 2020-02-06 11:10:10
言語 F#
(F# 4.0)
結果
AC  
実行時間 68 ms / 5,000 ms
コード長 4,053 bytes
コンパイル時間 22,081 ms
コンパイル使用メモリ 189,592 KB
実行使用メモリ 31,744 KB
最終ジャッジ日時 2024-12-23 02:07:33
合計ジャッジ時間 22,435 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 10
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.fsproj を復元しました (620 ms)。
MSBuild のバージョン 17.9.6+a4ecab324 (.NET)
  main -> /home/judge/data/code/bin/Release/net8.0/main.dll
  main -> /home/judge/data/code/bin/Release/net8.0/publish/

ソースコード

diff #
プレゼンテーションモードにする

open System
open System.Collections.Generic
[<AutoOpen>]
module Cin =
let read f = stdin.ReadLine() |> f
let reada f = stdin.ReadLine().Split() |> Array.map f
let readChars() = read string |> Seq.toArray
let readInts() = readChars() |> Array.map (fun x -> Convert.ToInt32(x.ToString()))
[<AutoOpen>]
module Cout =
let writer = new IO.StreamWriter(new IO.BufferedStream(Console.OpenStandardOutput()))
let print (s: string) = writer.Write s
let println (s: string) = writer.WriteLine s
let inline puts (s: ^a) = string s |> println
// -----------------------------------------------------------------------------------------------------
//                              
//        /            
//       ,     '⌒    /          
//       '          -
//        { {  } j '  }   ___
//       _V ハレノ   V ヘ     
//       {xー'(、ル( }  ハ::::::.    
//      ィ'"tァ} ( ` /=   ::::::i     
//      (   V`7  _, ` ノ| :::::|      
//           { '      { ノ     !:::::|   ___^
//       .::::. _, -――- /:::::/      
//      .::::::::::::::::>'"ノルハ` -―- 、⌒::::::/. ___  
//   ヘ{ {、ム _   >  __     
//  ,   /--'__          
//     /     { ´ ¨¨´         ニ}      ''"´
//  ニニ/     /               }
//  ニ./        }{                   
//  ニニ/       }               ___
//  ニニ!                         ='
//  ニニ}          ⌒`           _____
//   / _ヘ{          /    
//      ) 、    /                `{    /
//  //   /       ___ --‐=、   _
//   {       /    //     /         __ノ
// -----------------------------------------------------------------------------------------------------
// -----------------------------------------------------------------------------------------------------
let s = read string
let delimi = [| '+'; '*' |]
let nums =
s.Split(delimi)
|> Seq.toArray
|> Array.map (fun x -> Convert.ToInt64(x))
let ops = Queue<char>()
for c in s do
if c = '+' || c = '*' then ops.Enqueue(c)
let mutable ans = nums.[0]
for i in 1 .. Array.length nums - 1 do
let o = ops.Dequeue()
if o = '+' then ans <- ans * nums.[i] else ans <- ans + nums.[i]
puts ans
// -----------------------------------------------------------------------------------------------------
writer.Dispose()
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0