洛谷 ——洛谷的第一个任务

从今以后,我会尝试把洛谷上的挑战及任务做完分享给大家,大家多多评论,多多关注


友情链接:
1. 洛谷
2. Theorie des Distribu

任务1(难度:1)

完成这个任务,通过下列题目至少3题:
P1000 超级玛丽游戏
P1001 A+B Problem
P1421 小玉买文具
P1425 小鱼的游泳时间

NO1.

超级玛丽游戏

难度:100000000000000000000000000000*0+1,编程能力:cout即可,
题目描述
超级玛丽是一个非常经典的游戏。请你用字符画的形式输出超级玛丽中的一个场景。

				********
               ************
               ####....#.
             #..###.....##....
             ###.......######              ###            ###
                ...........               #...#          #...#
               ##*#######                 #.#.#          #.#.#
            ####*******######             #.#.#          #.#.#
           ...#***.****.*###....          #...#          #...#
           ....**********##.....           ###            ###
           ....****    *****....
             ####        ####
           ######        ######
##############################################################
#...#......#.##...#......#.##...#......#.##------------------#
###########################################------------------#
#..#....#....##..#....#....##..#....#....#####################
##########################################    #----------#
#.....#......##.....#......##.....#......#    #----------#
##########################################    #----------#
#.#..#....#..##.#..#....#..##.#..#....#..#    #----------#
##########################################    ############

这道题可谓是人人喊难,比一些奥赛的题还难,就算你让你老师做,她也会回你一句,作者辛苦,大家点个赞吧。

代码


#include<iostream>
using namespace std;
int main()
{
cout<<"                ********"<<endl;
cout<<"               ************"<<endl;
cout<<"               ####....#."<<endl;
cout<<"             #..###.....##...."<<endl;
cout<<"             ###.......######              ###            ###"<<endl;
cout<<"                ...........               #...#          #...#"<<endl;
cout<<"               ##*#######                 #.#.#          #.#.#"<<endl;
cout<<"            ####*******######             #.#.#          #.#.#"<<endl;
cout<<"           ...#***.****.*###....          #...#          #...#"<<endl;
cout<<"           ....**********##.....           ###            ###"<<endl;
cout<<"           ....****    *****...."<<endl;
cout<<"             ####        ####"<<endl;
cout<<"           ######        ######"<<endl;
cout<<"##############################################################"<<endl;
cout<<"#...#......#.##...#......#.##...#......#.##------------------#"<<endl;
cout<<"###########################################------------------#"<<endl;
cout<<"#..#....#....##..#....#....##..#....#....#####################"<<endl;
cout<<"##########################################    #----------#"<<endl;
cout<<"#.....#......##.....#......##.....#......#    #----------#"<<endl;
cout<<"##########################################    #----------#"<<endl;
cout<<"#.#..#....#..##.#..#....#..##.#..#....#..#    #----------#"<<endl;
cout<<"##########################################    ############"<<endl;
return 0;
}

No2.

A+B Problem

难度:0,数学:初一(小一),英语:六年级(Problem),语文:六年级(文言文是什么鬼)
题目描述:

输入两个整数 a,b,输出它们的和

我就纳闷,它为什么会在下面打出代码
所以,这道题难度为0,
C

#include <stdio.h>

int main() {
    int a,b;
    scanf("%d%d",&a,&b);
    printf("%d", a+b);
    return 0;
}

C++

#include <iostream>
#include <cstdio>

using namespace std;

int main() {
    int a,b;
    cin >> a >> b;
    cout << a+b;
    return 0;
}

Pascal

var a, b: longint;
begin
    readln(a,b);
    writeln(a+b);
end.

Python2

s = raw_input().split()
print int(s[0]) + int(s[1])

Python3

s = raw_input().split()
print int(s[0]) + int(s[1])

Java

import java.io.*;
import java.util.*;
public class Main {
    public static void main(String args[]) throws Exception {
        Scanner cin=new Scanner(System.in);
        int a = cin.nextInt(), b = cin.nextInt();
        System.out.println(a+b);
    }
}

JavaScript(JS)

const fs = require('fs')
const data = fs.readFileSync('/dev/stdin')
const result = data.toString('ascii').trim().split(' ').map(x => parseInt(x)).reduce((a, b) => a + b, 0)
console.log(result)
process.exit() // 请注意必须在出口点处加入此行

Ruby

a, b = gets.split.map(&:to_i)
print a+b

php

<?php
$input = trim(file_get_contents("php://stdin"));
list($a, $b) = explode(' ', $input);
echo $a + $b;

Rust

use std::io;

fn main(){
    let mut input=String::new();
    io::stdin().read_line(&mut input).unwrap();
    let mut s=input.trim().split(' ');

    let a:i32=s.next().unwrap()
               .parse().unwrap();
    let b:i32=s.next().unwrap()
               .parse().unwrap();
    println!("{}",a+b);
}

Go

package main

import "fmt"

func main() {
    var a, b int
    fmt.Scanf("%d%d", &a, &b)
    fmt.Println(a+b)
}

C# Mono

using System;

public class APlusB{
    private static void Main(){
        string[] input = Console.ReadLine().Split(' ');
        Console.WriteLine(int.Parse(input[0]) + int.Parse(input[1]));
    }
}

Perl

my $in = <STDIN>;
chomp $in;
$in = [split /[\s,]+/, $in];
my $c = $in->[0] + $in->[1];
print "$c\n";

文言

施「require('fs').readFileSync」於「「/dev/stdin」」。名之曰「數據」。
施「(buf => buf.toString().trim())」於「數據」。昔之「數據」者。今其是矣。
施「(s => s.split(' '))」於「數據」。昔之「數據」者。今其是矣。
注曰。「「文言尚菜,無對象之操作,故需 JavaScript 之语法」」。

夫「數據」之一。取一以施「parseInt」。名之曰「甲」。
夫「數據」之二。取一以施「parseInt」。名之曰「乙」。

加「甲」以「乙」。書之。

中国在3000年前就有计算机,洛谷和智子 了,我真的没骗你
在这里插入图片描述
在这里插入图片描述
这个文言是来搞笑的吗?
简单评论一下,上述所以,Python最简单Java较复杂C和C++好理解Rust最麻烦(仅是个人观点)

NO3

小玉买文具

会除法就行
(可算来了道正经的题)

题目描述
班主任给小玉一个任务,到文具店里买尽量多的签字笔。已知一只签字笔的价格是1元9角,而班主任给小玉的钱是a元b角,小玉想知道,她最多能买多少只签字笔呢。

输入格式 :
输入的数据,在一行内,包括两个整数,依次表示a和b,a<=10000,b<=9。

输出格式:
输出一个整数,表示小玉最多能买多少只签字笔。

样例
输入
10 3
输出
5

我们通过小学数学可以得知,个数=总量/单价
我们可以都转换为角来求比较方便
代码

#include <iostream>
using namespace std;
int main(){
	int a,b;
	cin>>a>>b;
	int zongliang=a*10+b;//总量,单位为角 
	int danjia=19;//单价,单位为角 
	int geshu=zongliang/danjia;//个数=总量/单价
	cout<<geshu;
	return 0;
} 

No.4

小鱼的游泳时间

题目描述

伦敦奥运会要到了,小鱼在拼命练习游泳准备参加游泳比赛,可怜的小鱼并不知道鱼类是不能参加人类的奥运会的。(狗血

这一天,小鱼给自己的游泳时间做了精确的计时(本题中的计时都按24小时制计算),它发现自己从a时b分一直游泳到当天的c时d分,请你帮小鱼计算一下,它这天一共游了多少时间呢?

小鱼游的好辛苦呀,你可不要算错了哦(。。。。。)

输入格式

一行内输入 4 个整数,分别表示 a, b, c, d。

输出格式

一行内输出 2 个整数 e 和 f,用空格间隔,依次表示小鱼这天一共游了多少小时多少分钟。其中表示分钟的整数 f 应该小于60。

输入输出样例
输入
12 50 19 10
输出
6 20
说明/提示
对于全部测试数据,保证为一天内的时间,且结束时间一定晚于开始时间。

样例分析
小鱼从12点50分一直练习到了19点10分,一小时为60分钟,则12h=1260=720min,720+50=770.这是它的开始时间
19h=19
60=1140min,1140+10=1150,这是它的介绍时间
1150-770=380(min),它一共练习了380min。
380/60=6…20,它一共练习了6小时20分钟
代码

#include <iostream>
using namespace std;
int main(){
	int q1,q2,j1,j2;
	cin>>q1>>q2>>j1>>j2;
	int qi=q1*60+q2,jie=j1*60+j2;
	int time=jie-qi;
	int hour=time/60,minute=time%60;
	cout<<hour<<" "<<minute;
	//输入:12 50 19 10
	//输出6 20
	/*小鱼从12点50分一直练习到了19点10分,一小时为60分钟,则12h=12*60=720min,720+50=770.这是它的开始时间
	19h=19*60=1140min,1140+10=1150,这是它的介绍时间
	1150-770=380(min),它一共练习了380min。
	380/60=6......20,它一共练习了6小时20分钟*/
	
	return 0;
} 

感谢大家能把这篇文章看完,别忘了关注Theorie des Distribu
谢谢大家

发布了12 篇原创文章 · 获赞 7 · 访问量 1669

猜你喜欢

转载自blog.csdn.net/weixin_45497223/article/details/104155348
今日推荐