洛谷刷题记录【入门1】顺序结构

2023-05-16

【入门1】顺序结构 - 题单 - 洛谷https://www.luogu.com.cn/training/100#problems


1、A+B Problem - 洛谷

输入两个整数 a, ,b,输出它们的和(|a|,|b| ≤10⁹)[输入一个数字空格在输入一个数字]

n=input().split()

print(int(n[0])+int(n[1]))

题解思路:在Python里面直接用input()输入的只能输入一个字符串类型的数字,所以需要用split分割字符串,采用空格将其分开,最后计算的时候采用下标读取的形式获取数字,在进行类型转换相加减即可。



2、超级玛丽游戏 - 洛谷

超级玛丽是一个非常经典的游戏。请你用字符画的形式输出超级玛丽中的一个场景。

print("                ********")
print("               ************")
print("               ####....#.")
print("             #..###.....##....")
print("             ###.......######              ###            ###")
print("                ...........               #...#          #...#")
print("               ##*#######                 #.#.#          #.#.#")
print("            ####*******######             #.#.#          #.#.#")
print("           ...#***.****.*###....          #...#          #...#")
print("           ....**********##.....           ###            ###")
print("           ....****    *****....")
print("             ####        ####")
print("           ######        ######")
print("##############################################################")
print("#...#......#.##...#......#.##...#......#.##------------------#")
print("###########################################------------------#")
print("#..#....#....##..#....#....##..#....#....#####################")
print("##########################################    #----------#")
print("#.....#......##.....#......##.....#......#    #----------#")
print("##########################################    #----------#")
print("#.#..#....#..##.#..#....#..##.#..#....#..#    #----------#")
print("##########################################    ############")

题解思路:主要是对print()输出函数的使用,直接使用print的话需要使用多个print(),还可以借助字符串变量,将图形直接赋值给一个字符串变量,然后在使用print()直接输出即可。

3、【深基2.例5】苹果采购 - 洛谷

现在需要采购一些苹果,每名同学都可以分到固定数量的苹果,并且已经知道了同学的数量,请问需要采购多少个苹果?

a, b = map(int, input().split())
print(a * b)

题解思路:这题主要是考察对map()映射函数的使用,,这种赋值输入语法以后会经常遇到。


map(function, iterable, ...)  

4、【深基2.例6】字母转换 - 洛谷

输入一个小写字母,输出其对应的大写字母。例如输入 q[回车] 时,会输出 Q。

print(input().upper())

题解思路:这题主要考察对大小写转换函数的使用,类似的还有

title ()标题大写、lower () 转换为小写

5、【深基2.例7】数字反转 - 洛谷

输入一个不小于 100100 且小于 10001000,同时包括小数点后一位的一个浮点数,例如 123.4123.4 ,要求把这个数字翻转过来,变成 4.3214.321 并输出。

s = input()
ss = s[::-1]
print(float(ss))

题解思路:这题主要考察对切片的使用还有数据类型的转换

切片[开始:结尾:步长] +正向  -反向

6、【深基2.例8】再分肥宅水 - 洛谷

现在有 t 毫升肥宅快乐水,要均分给 n 名同学。每名同学需要 2 个杯子。现在想知道每名同学可以获得多少毫升饮料(严格精确到小数点后 3 位),以及一共需要多少个杯子。输入一个实数 t 和一个整数 n,使用空格隔开。输出两个数字表示答案,使用换行隔开。

0≤t≤10000且不超过3位小数,1≤n≤1000

t,n = input().split()

t = float(t)
n = int(n)

tt=float(t/n)
nn=int(n*2)
print('%.3f'%tt)
print(nn)

题解思路:这题主要是对输出格式符的使用,和C语言不同,%在后面也需要使用%来进行接收。

7、小鱼的游泳时间 - 洛谷

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

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

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

a,b,c,d = map(int,input().split())
if b>d:
    c=c-1
    f=d+60-b
else:
    f=d-b
e=c-a
print(e,f)

题解思路:这题主要是map()和简单算法的实现,需要考虑细节

8、【深基1-2】小学数学 N 合一 - 洛谷

题目过长,影响观看,点进连接看即可。

#include<bits/stdc++.h>
using namespace std;
int n;
int main(){
    cin>>n;
    if(n==1){
        cout<<"I love Luogu!"<<endl;
    }
    if(n==2){
        cout<<6<<" "<<4<<endl;
    }
    if(n==3){
        cout<<3<<endl<<12<<endl<<2<<endl;
    }
    if(n==4){
        cout<<166.666667<<endl;
    }
    if(n==5){
        cout<<15<<endl;
    }
    if(n==6){
        cout<<10.816653826391967879357663802411<<endl;
    }
    if(n==7){
        cout<<110<<endl<<90<<endl<<0<<endl;
    }
    if(n==8){
        cout<<31.41593<<endl<<78.539825<<endl<<523.59883333333333333333333333333<<endl;
    }
    if(n==9){
        cout<<22<<endl;
    }
    if(n==10){
        cout<<9<<endl;
    }
    if(n==11){
        cout<<33.3333333333<<endl;
    }
    if(n==12){
        cout<<13<<endl<<'R'<<endl;
    }
    if(n==13){
        cout<<16<<endl;
    }
    if(n==14){
        for(int i=1;i<=110;i++){
            int s=120-i;
            int ans=s*i;
            if(ans==3500) {cout<<i<<endl;break;}
        }
    }
    return 0;
}

题解思路:主要是对小学数学题的做法

9、【深基2.习2】三角形面积 - 洛谷

一个三角形的三边长分别是 aa、bb、cc,那么它的面积为 \sqrt{p(p-a)(p-b)(p-c)}p(p−a)(p−b)(p−c)​,其中 p=\frac{1}{2}(a+b+c)p=21​(a+b+c)。输入这三个数字,计算三角形的面积,四舍五入精确到 1 位小数。

保证能构成三角形,0\leq a,b,c\leq 10000≤a,b,c≤1000,每个边长输入时不超过2位小数。

import math
 
a, b, c = map(float, input().split())
p = float((a + b + c)/2)
s = math.sqrt(p * (p-a) * (p-b) * (p-c))
print("%.1f"%s)

题解思路:利用公式即可



10、小玉买文具 - 洛谷

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

a, b = map(int, input().split())
sum = a * 10 + b
ans = int(sum / 19)
print(ans)

题解思路:小学算术题

11、【深基2.习6】Apples Prologue / 苹果和虫子 - 洛谷

八尾勇喜欢吃苹果。她现在有 m(m≤100) 个苹果,吃完一个苹果需要花费 t(0≤t≤100) 分钟,吃完一个后立刻开始吃下一个。现在时间过去了s(s≤10000) 分钟,请问她还有几个完整的苹果?

import math
 
m, t, s = map(int, input().split())
if t == 0:
    print("0")
else:
    num = math.floor(s / t)
    if s % t == 0:
        num = m - num
    else:
        num = m - num - 1
    if num < 0:
        num = 0
    print(num)

题解思路:算术题floor()下舍整数

12、对角线 - 洛谷

对于一个 n 个顶点的凸多边形,它的任何三条对角线都不会交于一点。请求出图形中对角线交点的个数。

n = int(input())
ans = int(n*(n-1)*(n-2)*(n-3)//24)
print(ans)



题解思路:交点是由两根线组成的,也就是说需要四个顶点为这两根线的组成做贡献
想通了这个,我们就不难发现,我们求的交点个数相当于是求在这个多边形的交线中求出两个不同交线的个数,也就是在多边形的顶点中选取四个不同顶点的数目(还是很好理解的吧)
到了这里我们发现这个问题是一个组合数学的问题结果就是Cn4,就是在n个元素中选取四个的情况总数。
然后你以为就完了嘛,看一眼数据,1e5直接爆long long,但是我们不用写高精度,这里有个比较巧妙的方法:
n*(n-1)*(n-2)*(n-3)/24==n*(n-1)/2*(n-2)/3*(n-3)/4
先来说说为什么这么做能保证结果是整数
n和n-1是两个相邻的数,2的倍数一定是个偶数,而n和n-1必定有一个数为偶数(相邻的两个数必定有一个为2的倍数)
相邻的三个数必定有一个为3的倍数,那么4也就同理(其实这是初中的知识)



13、【深基2.例12】上学迟到 - 洛谷

yyy 的学校要求早上 8 点前到达。学校到 yyy 的家一共有s(s≤10000) 米,而 yyy 可以以 v(v<10000) 米每分钟的速度匀速走到学校。此外在上学路上它还要额外花 10 分钟时间进行垃圾分类。请问为了避免迟到 yyy 最晚什么时候出门?输出 HH:MM 的时间格式,不足两位时补零。由于路途遥远, yyy 可能不得不提前一天出发,不过不可能提前超过一天。

s, v = map(int, input().split())
t = s / v
 
t += 10
x = 480
if t >= 480:
    x += 24*60
x -= t
h = int(x // 60)
m = int(x % 60)
ans = ''
if(h < 10):
    ans += '0'
    ans += str(h)
else:
    ans += str(h)
ans +=':'
if(m < 10):
    ans += '0'
    ans += str(m)
else:
    ans += str(m)
 
print(ans)
 

题解思路:

14、[NOIP2017 普及组] 成绩 - 洛谷

牛牛最近学习了 C++ 入门课程,这门课程的总成绩计算方法是:

总成绩=作业成绩×20%+小测成绩×30%+期末考试成绩×50%

牛牛想知道,这门课程自己最终能得到多少分。

a, b, c = map(int, input().split())
ans = a * 0.2 + b * 0.3 + c * 0.5
print(int(ans))

题解思路:简单的计算题


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

洛谷刷题记录【入门1】顺序结构 的相关文章

随机推荐

  • Android 获取所有短信-彩信

    1 权限 lt 读取短信 gt lt uses permission android name 61 34 android permission READ SMS 34 gt lt uses permission android name
  • Photoshop CC 2018 安装包安装教程

    Photoshop CC 2018功能特点 1 更紧密连接的 Photoshop 全新的智慧型锐利化 2 智慧型增加取样 内含 Extended 功能 Camera RAW 8 和图层支援 3 可编辑的圆角矩形 多重形状和路径选择 相机防手
  • 【原创】什么是原码、反码、补码?

    原码 反码 补码是计算机中对数字的二进制表示方法 原码 xff1a 将最高位作为符号位 xff08 0表示正 xff0c 1表示负 xff09 xff0c 其它数字位代表数值本身的绝对值的数字表示方式 反码 xff1a 如果是正数 xff0
  • snprintf中的错误,不要出现目标地址也是源地址的情况

    在使用snprintf时 xff0c 千万要注意一点 xff0c 不要出现目标地址也是源地址的情况 看如下例子 xff1a span class token macro property span class token directive
  • Linux下的shell进度条

    一 关于Shell Shell的作用是解释执行用户的命令 xff0c 它有两种执行命令的方式 xff1a 交互式和批处理 Shell脚本和编程语言很相似 xff0c 也有变量和流控制语句 xff0c 但Shell脚本是解释执行 xff0c
  • you-get相关使用命令

    you get i url 获取视频格式 清晰度等信息 you get o E folder url 保存路径 在当前目录的路径栏 输入cmd即可打开命令行 或者 shift 右键 用powershell打开 you get p PotPl
  • Spring Cloud从入门到放弃(四):Eureka的常用配置

    前言 Spring Cloud系列 点击查看Spring Cloud系列文章 eurka的常用配置 eureka server前缀的配置项 是否允许开启自我保护模式 xff0c 缺省 xff1a span class token boole
  • STM32之点亮LED

    学习一个新的处理器 xff0c 第一个程序肯定就是点亮LED xff0c 它可以让我们较快的 较清晰的了解到一个处理器的程序结构 xff0c 学习32也不例外 xff0c 首先第一个程序我们就来点亮LED xff0c 点亮LED程序有很多种
  • 判断两条线段是否相交

    判断两条直线是否相交有两步 xff1a 1 xff1a 快速排斥 xff08 可以筛除大部分 xff09 2 xff1a 跨立试验 xff08 下面会有所说明 xff09 现在开始解释 xff1a 第一步快速排斥 xff0c 实际上就是先判
  • 2015-2016 ACM-ICPC Pacific Northwest Regional Contest Div.2( Problem V Gears)

    题目地址 xff1a 点击打开链接 题意 xff1a 给你很多齿轮 xff0c 让你判断第一个齿轮和第n个齿轮的关系 有三种关系题目中已经给出 解题思路 xff1a 算是比较直观的一个dfs题目了 xff0c 重点是怎么样处理这个dfs 结
  • 免费馅饼(简单动态规划)

    都说天上不会掉馅饼 xff0c 但有一天gameboy正走在回家的小径上 xff0c 忽然天上掉下大把大把的馅饼 说来gameboy的人品实在是太好了 xff0c 这馅饼别处都不掉 xff0c 就掉落在他身旁的10米范围内 馅饼如果掉在了地
  • CF816B-Karen and Coffee

    B Karen and Coffee time limit per test2 5 seconds memory limit per test512 megabytes inputstandard input outputstandard
  • B. Mister B and Angle in Polygon 421.div2

    B Mister B and Angle in Polygon time limit per test 2 seconds memory limit per test 256 megabytes input standard input o
  • openwrt下安装lighttpd/webdav模块及改变安装目录

    Openwrt下安装lighttpd及Webdav模块 安装lightttpd 1 opkg update 2 opkg install lighttpd 依赖libxml库 3 修改 etc lighttpd lighttpd conf
  • Game of the Rows CodeForces - 839B

    Daenerys Targaryen has an army consisting of k groups of soldiers the i th group contains ai soldiers She wants to bring
  • ccf 交通规划

    201609 4试题名称 xff1a 交通规划时间限制 xff1a 1 0s内存限制 xff1a 256 0MB问题描述 xff1a 问题描述 G国国王来中国参观后 xff0c 被中国的高速铁路深深的震撼 xff0c 决定为自己的国家也建设
  • ccf 游戏

    试题编号 xff1a 201604 4试题名称 xff1a 游戏时间限制 xff1a 1 0s内存限制 xff1a 256 0MB问题描述 xff1a 问题描述 小明在玩一个电脑游戏 xff0c 游戏在一个 n m的方格图上进行 xff0c
  • POJ 1738

    There is an old stone game At the beginning of the game the player picks n 1 lt 61 n lt 61 50000 piles of stones in a li
  • 电池充电电路(TP4059)详解

    电池充电电路 xff08 TP4059 xff09 详解 TP4059是一款完整的单节锂离子电池充电器 xff0c 带电池正负极反接保护反接功能 xff0c 支持高达600mA的充电电流 xff0c 更稳定的电流一致性 该芯片的充电电流可以
  • 洛谷刷题记录【入门1】顺序结构

    入门1 顺序结构 题单 洛谷 https www luogu com cn training 100 problems 1 A 43 B Problem 洛谷 输入两个整数 a b xff0c 输出它们的和 xff08 a b 10 xff