码蹄集 - MT2073 - 上传头像
Posted Tisfy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了码蹄集 - MT2073 - 上传头像相关的知识,希望对你有一定的参考价值。
传送门
上传头像
时间限制:1秒
空间限制:128M
题目描述
有一天无聊的你在注册一个无聊的网站,注册完的第一步自然是上传头像。
你发现这个网站总共可以上传 n个头像,每个头像必须是正方形,并且长宽至少为L×L
在图片上传前,系统会对图片进行如下处理:如果图片的任何一边长度超过了 G,那么系统会不断地对图片的长宽同时减半(向下取整),直至两边长度 ≤G 为止。
你现在找到了 n张可供上传的图片,第 ii 张的尺寸是 W_i *H_i。
如果图片有任何一边小于 L,请输出 “Too Young”
如果图片满足大小条件但不为正方形,请输出”Too Simple”
如果图片满足大小条件并且是正方形,请输出”Sometimes Naive”
以上所有字符串输出时均不包含引号。
输入描述
一行三个整数 n,L,G ,意义如题目所述。
接下来每行两个整数 W_i,H_i,表示图片长宽。
数据范围
n≤2000,0<Wi,Hi,G,L≤10000
输出描述
共 n行,每行一个字符串,意义如题目所述。
样例一
输入
3 5 10
12 3
7 8
5 5
输出
Too Young
Too Simple
Sometimes Naive
题目分析
这道题我也不知道为啥要输出这玩意儿。
既然让这么输出,那就这么输出吧。
- 首先判断是否有边长度大于G。如果有,就长和宽分别除以2。直到没有为止
- 接着判断是否有长度边小于L。如果有,就输出Too Young
- 如果没有输出Too Young,就判断长和宽是否相同。如果相同,就输出Sometimes Naive
- 否则就输出Too Simple
AC代码
/*
* @Author: LetMeFly
* @Date: 2022-08-21 11:05:12
* @LastEditors: LetMeFly
* @LastEditTime: 2022-08-21 11:09:10
*/
#include <bits/stdc++.h>
using namespace std;
#define mem(a) memset(a, 0, sizeof(a))
#define dbg(x) cout << #x << " = " << x << endl
#define fi(i, l, r) for (int i = l; i < r; i++)
#define cd(a) scanf("%d", &a)
typedef long long ll;
int main()
int n, l, g;
cin >> n >> l >> g;
while (n--)
int a, b;
cin >> a >> b;
while (a > g || b > g)
a /= 2, b /= 2;
if (a < l || b < l)
puts("Too Young");
else if (a == b)
puts("Sometimes Naive");
else
puts("Too Simple");
return 0;
虽然代码可以复制,但最好还是自己理解后再敲哦
原创不易,转载请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/126455567
以上是关于码蹄集 - MT2073 - 上传头像的主要内容,如果未能解决你的问题,请参考以下文章