Esempio n. 1
0
    static void Main()
    {
        Console.SetOut(new System.IO.StreamWriter(Console.OpenStandardOutput())
        {
            AutoFlush = false
        });
        var h = Read();
        var n = h[0];
        var a = Read();

        var st = new ST_RUSQ(n, a);

        for (int k = 0; k < h[1]; k++)
        {
            var q = Read();
            if (q[0] == 0)
            {
                st.Set(q[1], q[2], (q[3], q[4]));
            }
            else
            {
                Console.WriteLine(st.Get(q[1], q[2]));
            }
        }
        Console.Out.Flush();
    }
Esempio n. 2
0
    static void Main()
    {
        Console.SetOut(new System.IO.StreamWriter(Console.OpenStandardOutput())
        {
            AutoFlush = false
        });
        var h = Read();
        var n = h[0];

        var st = new ST_RUSQ(n);

        st.Set(0, n, 1);

        for (int k = 0; k < h[1]; k++)
        {
            var q = Read();
            st.Set(q[0] - 1, q[1], q[2]);
            Console.WriteLine(st.Get(0, n));
        }
        Console.Out.Flush();
    }
Esempio n. 3
0
    static void Main()
    {
        var r = new List <long>();
        var h = Read();
        var n = h[0];

        var st = new ST_RUSQ(n);

        for (int i = 0; i < h[1]; i++)
        {
            var q = Read();
            if (q[0] == 0)
            {
                st.Set(q[1], q[2] + 1, q[3]);
            }
            else
            {
                r.Add(st.Get(q[1], q[2] + 1));
            }
        }
        Console.WriteLine(string.Join("\n", r));
    }