結果
問題 | No.539 インクリメント |
ユーザー |
![]() |
提出日時 | 2021-05-11 11:02:10 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 63 ms / 2,000 ms |
コード長 | 2,051 bytes |
コンパイル時間 | 1,975 ms |
コンパイル使用メモリ | 104,832 KB |
実行使用メモリ | 33,664 KB |
最終ジャッジ日時 | 2024-09-21 16:23:54 |
合計ジャッジ時間 | 2,697 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 3 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System;public class Hello{static void Main(){var T = int.Parse(Console.ReadLine().Trim());while (T-- > 0){var s = Console.ReadLine().Trim();getAns(s);}}static string plus1(string s){if (s == "") return "";var sL = s.Length;var sa = s.ToCharArray();var kup = false;var up = false;var w = sa[sL - 1] - '0' + 1;if (w <= 9) return s.Substring(0, sL - 1) + w.ToString();else{if (sL == 1) kup = true;up = true;sa[sL - 1] = '0';var p = sL - 2;while (p >= 0){w = up ? sa[p] - '0' + 1 : sa[p] - '0';if (w <= 9) { sa[p] = w.ToString()[0]; break; }else{sa[p] = '0';if (p == 0) kup = true;}p--;}var w2 = kup ? "1" + new string(sa) : new string(sa);return w2;}}static bool checkNum(char t){var t2 = t - '0';return t2 >= 0 && t2 <= 9;}static void getAns(string s){var sL = s.Length;var p = sL - 1;var ep = -1;while (p >= 0){if (checkNum(s[p])) { ep = p; p--; break; }p--;}var sp = ep;while (p >= 0){if (checkNum(s[p])) { sp = p; }else break;p--;}if (sp == -1) Console.WriteLine(s);else{var w = s.Substring(sp, ep - sp + 1);var a2 = plus1(w);string a1;if (sp == 0) a1 = "";else a1 = s.Substring(0, sp);string a3;if (ep == sL - 1) a3 = "";else a3 = s.Substring(ep + 1);Console.Write(a1);Console.Write(a2);Console.WriteLine(a3);}}}