基于C#解决OJ刷题之输入输出问题的总结(AKOJ1064-1071A+B问题汇总)

声明:题目部分为akoj题目,代码为本人AC代码。

因为本人学校的oj支持各种环境,非常正常的当中就包括了C#。然暑假在家较为空暇,本着学习C#和复习算法的态度和目的,就又開始折腾起oj了。

题目部分是最基础的A+B系列,来看看C#的输入输出是怎么一回事吧

题目地址:http://183.167.205.82:8081/JudgeOnline/problemlist?volume=1

本文由csdn-jtahstu原创。转载请注明出处,欢迎志同道合的朋友一起交流学习。本人QQ:1373758426
和 博客链接:blog.csdn.net/jtahstu

ok

A+B(1)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:629 Accepted:352

Description

Your task is to Calculate a + b.

Too easy?

! Of course! I specially designed the problem for acm beginners.

You must have found that some problems have the same titles with this one, yes, all these problems were designed for the same aim.

Input

The input will consist of a series of pairs of integers a and b, separated by a space, one pair of integers per line.

Output

For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input.

Sample Input

1 5
10 20

Sample Output

6
30

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1064
{
    class Program
    {
        static void Main(string[] args)
        {
            string sb;
            while ((sb = Console.ReadLine()) != null)
            {
                string[] s = sb.Split();
                int x = int.Parse(s[0]), y = int.Parse(s[1]);
                Console.WriteLine(x + y);
            }
        }
    }
}

C#的输入系统非常恶心。仅仅能一行一行读,然后分离出里面的数据。再转换成你想要的类型,然后才干处理

A+B(2)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:459 Accepted:313

Description

Your task is to Calculate a + b.

Input

Input contains an integer N in the first line, and then N lines follow. Each line consists of a pair of integers a and b, separated by a space, one pair of integers per line.

Output

For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input.

Sample Input

2
1 5
10 20

Sample Output

6
30

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1065
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            while (n-- > 0)
            {
                string[] sb = Console.ReadLine().Split();
                int x = int.Parse(sb[0]), y = int.Parse(sb[1]);
                Console.WriteLine(x + y);
            }
        }
    }
}

和前一个几乎相同吧,哈哈,本来这几道题就几乎相同

A+B(3)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:527 Accepted:283

Description

Your task is to Calculate the sum of some integers.

Input

Input contains multiple test cases. Each test case contains a integer N, and then N integers follow in the same line. A test case starting with 0 terminates the input and this test case is not to
be processed.

Output

For each group of input integers you should output their sum in one line, and with one line of output for each line in input.

Sample Input

4 1 2 3 4
5 1 2 3 4 5
0 

Sample Output

10
15

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1066
{
    class Program
    {
        static void Main(string[] args)
        {
            string sb;
            while ((sb = Console.ReadLine()) != null)
            {
                string[] s = sb.Split();
                int n = int.Parse(s[0]);
                if (n == 0) break;
                int sum = 0;
                for (int i = 1; i <= n; i++)
                    sum += int.Parse(s[i]);
                Console.WriteLine(sum);
            }
        }
    }
}

注意注意,这道题代码一直RE,表示后面有一道和这就差别个输入0结束。可是那道题AC了。这题我猜是输入数据不是严格的在一行输入的。那样的话C#就根本没法读。反正我再看看,以后要是AC了,我就把这句话删掉

A+B(4)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:380 Accepted:292

Description

Your task is to Calculate a + b.

Input

Input contains multiple test cases. Each test case contains a pair of integers a and b, one pair of integers per line. A test case containing 0 0 terminates the input and this test case is not to
be processed.

Output

For each pair of input integers a and b you should output the sum of a and b in one line, and with one line of output for each line in input.

Sample Input

1 5
10 20
0 0

Sample Output

6
30

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1067
{
    class Program
    {
        static void Main(string[] args)
        {
            string sb;
            while ((sb = Console.ReadLine()) != null)
            {
                string[] s = sb.Split();
                int x = int.Parse(s[0]), y = int.Parse(s[1]);
                if (x == 0 && y == 0) break;
                Console.WriteLine(x + y);
            }
        }
    }
}

A+B(5)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:393 Accepted:256

Description

Your task is to calculate the sum of some integers.

Input

Input contains an integer N in the first line, and then N lines follow. Each line starts with a integer M, and then M integers follow in the same line.

Output

For each group of input integers you should output their sum in one line, and with one line of output for each line in input.

Sample Input

2
4 1 2 3 4
5 1 2 3 4 5

Sample Output

10
15

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1068
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            while (n-- > 0)
            {
                string[] s = Console.ReadLine().Split();
                int t = int.Parse(s[0]);
                int sum = 0, i = 1;
                while (t-- > 0)
                {
                    sum += int.Parse(s[i]);
                    i++;
                }
                Console.WriteLine(sum);
            }

        }
    }
}

A+B(6)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:346 Accepted:252

Description

Your task is to calculate the sum of some integers.

Input

Input contains multiple test cases, and one case one line. Each case starts with an integer N, and then N integers follow in the same line.

Output

For each test case you should output the sum of N integers in one line, and with one line of output for each line in input.

Sample Input

4 1 2 3 4
5 1 2 3 4 5

Sample Output

10
15

Source

这道题AC了。可是3那道题居然RE,不就少个0结束吗。没啥差别啊。郁闷

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1069
{
    class Program
    {
        static void Main(string[] args)
        {
            string sb;
            while ((sb = Console.ReadLine()) != null)
            {
                string[] s = sb.Split();
                int n = int.Parse(s[0]);
                //if (n == 0) break;
                int sum = 0, i = 1;
                while (n-- > 0)
                {
                    sum += int.Parse(s[i]);
                    i++;
                }
                Console.WriteLine(sum);
            }
        }
    }
}

A+B(7)

Time Limit:1000MS  Memory Limit:65536K

Total Submit:439 Accepted:258

Description

Your task is to Calculate a + b.

Input

The input will consist of a series of pairs of integers a and b, separated by a space, one pair of integers per line.

Output

For each pair of input integers a and b you should output the sum of a and b, and followed by a blank line.

Sample Input

1 5
10 20

Sample Output

6

30

Source

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AK1071
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            while (n-- > 0)
            {
                string[] s = Console.ReadLine().Split();
                int t = int.Parse(s[0]);
                int sum = 0, i = 1;
                while (t-- > 0)
                {
                    sum += int.Parse(s[i]);
                    i++;
                }
                Console.WriteLine(sum);
                Console.WriteLine();
            }
        }
    }
}

OK,C#的写法感觉怎样?也都几乎相同吧。我感觉是这样,和C++、Java都殊途同归,差别就是一些小细节吧能用在刷题上的,在家没书,C#后面的东西没法去看,如今还在不断学习中,加油!

时间: 2024-10-01 07:18:39

基于C#解决OJ刷题之输入输出问题的总结(AKOJ1064-1071A+B问题汇总)的相关文章

OJ刷题常用的4中基本输入形式

初到OJ网站上刷题,输入形式就是我们要考虑的问题.通过自己的一些摸索,OJ题目的输入形式大体上无外乎4种.下面就详细介绍: 1 输入数据文件中,第一行数据标明了测试数据的数目: 2 输入数据文件中,有标明输入结束的数据 3 输入数据文件中,测试数据一直到文件尾 4 没有输入数据 第1中情形的处理方法: //int i,kase scanf("%d",&kase); for(i=1;i<=kase;i++) { //处理第i中情况 } ...................

第十六周oj刷题——Problem C: B 求类中数据成员的最大值-类模板

Description 声明一个类模板,类模板中有三个相同类型的数据成员,有一函数来获取这三个数据成员的最大值. Input 分别输入3个整数,3个浮点数,3个字符 Output 3个整数的最大值 3个浮点数中的最大值 3个字符中的最大值 Sample Input 9 5 6 1.1 3.4 0.9 a b c Sample Output 9 3.40 c /* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年 6 月 25 日

第十六周oj刷题——Problem D: B 友元类-计算两点间距离

Description 类Distance定义为类Point的友元类来实现计算两点之间距离的功能. Point类中有两个私有数据成员X和Y来表示点的两个坐标(横坐标和纵坐标), 成员函数需要自己定义. 主程序输入两个Point点的坐标,计算两个点之间的距离. Input 两个点的坐标(横坐标和纵坐标) Output 两个点的距离(保留了两位小数) Sample Input 1.0 1.0 2.0 2.0 Sample Output 1.41 /* All rights reserved. * 文

第十五周oj刷题——Problem I: C++ 习题 比较大小-类模板

Description 声明一个类模板,利用它分别实现两个整数.浮点数和字符的比较,求出大数和小数.说明:在类模板外定义各成员函数. Input 输入两个整数.两个浮点数和两个字符 Output 从大到小输出两个整数.两个浮点数和两个字符 Sample Input 3 7 45.78 93.6 a A Sample Output 7 3 93.60 45.78 a A   /* All rights reserved. * 文件名称:test.cpp * 作者:陈丹妮 * 完成日期:2015年

oj刷题——第十五周C++习题 对象转换

Description 定义一个Teacher(教师)类(教师号,姓名,性别,薪金)和一个Student(学生)类(学号,姓名,性别,成绩),二者有一部分数据成员是相同的,num(号码),name(姓名),sex(性别).编写程序,将一个Student对象(学生)转换为Teacher(教师)类,只将以上3个相同的数据成员移植过去.可以设想为: 一位学生大学毕业了,留校担任教师,他原有的部分数据对现在的教师身份来说仍然是有用的,应当保留并成为其教师数据的一部分. Input 一个教师的信息和一个学

第十五周oj刷题——Problem E: C++习题 对象数组求最大值

Description 建立一个对象数组,内放n(<10)个学生的数据(学号.成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出n个学生中成绩最高者,并输出其学号. Input n和n个学生的学号.成绩 Output 成绩最高者的学号和成绩 Sample Input 5 101 78.5 102 85.5 103 98.5 104 100.0 105 95.5 Sample Output 104 100.00 /* All rights reserved. * 文件名称:

第十五周oj刷题—— Problem C: 矩形类中运算符重载【C++】

Description 定义一个矩形类,数据成员包括左下角和右上角坐标,定义的成员函数包括必要的构造函数.输入坐标的函数,实现矩形加法,以及计算并输出矩形面积的函数.要求使用提示中给出的测试函数并不得改动. 两个矩形相加的规则是:决定矩形的对应坐标分别相加,如 左下角(1,2),右上角(3,4)的矩形,与 左下角(2,3),右上角(4,5)的矩形相加,得到的矩形是 左下角(3,5),右上角(7,9)的矩形. 这个规则没有几何意义,就这么定义好了. 输出面积的功能通过重载"<<&quo

第十五周oj刷题——Problem B: 矩形类定义【C++】

Description 定义一个矩形类,数据成员包括左下角和右上角坐标,定义的成员函数包括必要的构造函数.输入坐标的函数,以及计算并输出矩形面积的函数.要求使用提示中给出的测试函数并不得改动. Input 四个数,分别表示矩形左下角和右上角顶点的坐标,如输入3.7 0.4 6.5 4.9,代表左下角坐标为(3.7, 0.4),右上角坐标为(6.5, 4.9). Output 输出一共有3行(请参考提示(hint)中的main函数): 第一行:由输入的坐标确定的矩形对象p1的面积 第二行:由对象复

OJ刷题之《输入三个整数,按由小到大的顺序输出》

题目描述 输入三个整数,按由小到大的顺序输出.分别使用指针和引用方式实现两个排序函数.在主函数中输入和输出数据. 输入 三个整数 输出 由小到大输出成一行,每个数字后面跟一个空格.由指针方式实现. 由小到大输出成一行,每个数字后面跟一个空格.由引用方式实现. 样例输入 2 3 1 样例输出 1 2 3 1 2 3 提示 主函数已给定如下,提交时不需要包含下述主函数 /* C++代码 */ int main() { void sort1(int *,int *,int *); void sort2