Help us understand the problem. What is going on with this article?

POH6 C# 解答

More than 3 years have passed since last update.

ネタバレのため、paizaオンラインハッカソン6問題をまだやってない人は見ないことをお勧めする。
POH6+は明日以降。

緑川つばめ

コメントするようなこともない。

public class Hello{
public static void Main(){
// 自分の得意な言語で
// Let's チャレンジ!!
var N = int.Parse(System.Console.ReadLine());
System.Console.WriteLine(N+N%10+N/10);
}
}

霧島京子

一番面倒ではあった。処理終了条件を付けられるけど、なくても最短時間っぽいのでそのままとした。
読み込んだ数列のint配列化が1行で出来るようになったのはありがたい。

using System;
using System.Linq;

namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            int N = int.Parse(Console.ReadLine());
            bool[] map = new bool[N];   //  到達可能マップ
            int goal = N-1;
            map[goal] = true;
            var t = Console.ReadLine().Split(' ').Select(k => int.Parse(k)).ToArray();
            for (int j = 0; j < (N - 2); j++) {
                for (int i = 1; i < goal; i++)
                {
                    var index = t[i] + i;
                    if (!map[i] && index < N && index > 0 && map[index])
                    {
                        map[i] = true;
                    }
                }
            }
            int m = int.Parse(Console.ReadLine());
            for (int i = 0; i < m; i++)
            {
                var d = int.Parse(Console.ReadLine());
                Console.WriteLine((d < N && map[d]) ? "Yes" : "No");
            }
        }
    }
}

六村リオ

誤差問題。3の時の計算を単純化出来ればよいのだろう。
コーヒー総量は整数で求められることを利用し、飲んだとき水の量だけ計算し続けるようにした。
分母が整数で誤差がなくなったのでおそらく正解だろう。
総量-水=粉 なので水か粉のどちらか分かっていれば答えは求まる。

using System;

namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
            double coffee = 0, water = 0;
            int weight = 0;
            int N = int.Parse(Console.ReadLine());
            for (int i = 0; i < N; i++)
            {
                var r = Console.ReadLine().Split(' ');
                var t = int.Parse(r[0]);
                var s = int.Parse(r[1]);
                switch (t)
                {
                    case 1:
                        water += s;
                        weight += s;
                        break;
                    case 2:
                        weight += s;
                        break;
                    case 3:
                        water = water * (weight - s) / weight;
                        weight -= s;
                        break;
                }
            }
            coffee = weight - water;
            int ans = (int)(coffee * 100.0 / weight);
            Console.WriteLine(ans);
        }
    }
}
IL_k
ソフトを作る人
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした