没错!!!我就只做了第一道题!!!知道我有多菜了吧哈哈哈哈哈哈!!!
TA还不相信,说我是故意的?????????
我:“我骗谁也不会骗你哎”
好吧,其实我想说
“就算我骗过了全世界也不会骗你一个人。”
(狗头保命)
3406: 啊啊啊!快离我的家远一点
时间限制: 1 Sec 内存限制: 256 MB
提交: 140 解决: 109
[提交][状态][讨论版][命题人:im0qianqian]题目描述
欣队最近沉迷于游戏"我的世界","我的世界"中的建筑、地形都是由方块组成的。
有一天,欣队也给千千推荐了这款游戏,于是,两个人一起踏上了这条无法回头的冒险旅途。
开始的前几天,欣队帮我们两个人分别建造了自己的房子,为了防止千千迷路,特意将千千的房子建造在了欣队旁边。唔,可是为什么千千的房子比你的小呀,啊喂!QAQ 明明还有材料的说。
千千有一点小小的强迫症,所以特意叮嘱欣队在建造时遵守了以下原则:
- 千千的房子要位于欣队更北的位置,因为那边有草地有湖泊啦
- 千千的房子西侧要与欣队的对齐 QAQ
- 两个房子要挨着,中间没有一点空隙
如下图所示,我们假定有一个坐标系(上北下南左西右东),千千的房子(蓝色)左下角位于坐标原点,欣队的房子(黄色)左上角位于坐标原点。
w1,h1w1,h1 与 w2,h2w2,h2 分别代表两间房子的宽度与高度。在图中,w1=2,h1=4,w2=4,h2=3w1=2,h1=4,w2=4,h2=3,我们保证 w1≤w2w1≤w2,QAQ 为什么要这样!
呼啦!打怪!升级!
咦,箱子里红色的 TNT 是啥,千千疑惑的说道。
哦,那是用来炸东西的,找个点火石就够了,欣队回答。
和苦力怕(一种怪物)一样的效果?那个绿绿的家伙,上次我差一点死在它手里?
对,就是这样。
唔,那我可以用它来炸苦力怕,哈哈,看看谁更厉害。
此时千千想起了上次苦力怕炸掉了自己的房子 QAQ,为了报仇,我要用 TNT 围在房子周围,等苦力怕接近的时候点燃它,这样就可以打倒苦力怕了。
于是,千千去房外摆了一圈的 TNT,如图中的绿色格子。
呀,远处来了一只苦力怕,快点点燃引线。滋滋滋,一阵声音传来了,是引线点燃的味道?这下这只苦力怕要倒霉了,哈哈。
啊啊啊!快离我的家远一点!刚刚打猎回来的欣队喊道。
轰……一阵烟笼罩了视野。
???我的家呢?
啊,又失算了,又被苦力怕炸掉了自己的家 QAQ,千千依然不懂发生了啥。
浪费了好多好多 TNT,怎么向欣队解释呢?
你能帮千千计算一下他浪费了多少 TNT 嘛!(题外音:玩"我的世界"别找千千,他只会拆家 QAQ)输入
输入一行有四个整数,分别代表 w1,h1,w2,h2 (1≤w1,h1,w2,h2≤108,w1≤w2)w1,h1,w2,h2 (1≤w1,h1,w2,h2≤108,w1≤w2)。
输出
输出一个正整数,代表千千浪费的 TNT 数量。
样例输入
copy1 2 2 2样例输出
16来源
#include<stdio.h>
int main()
{
int w1, h1, w2, h2;
scanf("%d%d%d%d", &w1, &h1, &w2, &h2);
printf("%d",h1 * 2 + 2 * w2 + h2 * 2 + 4);
}
3407: 小 Y 的徽章
时间限制: 1 Sec 内存限制: 256 MB Special Judge
提交: 103 解决: 33
[提交][状态][讨论版][命题人:im0qianqian]题目描述
毕业了,小 Y 想要打造一枚具有纪念意义的徽章送给老师,该徽章是周长为 ll 的正 nn 边形,现在小 Y 想要知道这枚徽章的面积有多大,你能帮助她解决这个问题么?
输入
输入只有一行,包含两个整数 n,l (3≤n≤50,1≤l≤100000)n,l (3≤n≤50,1≤l≤100000),其中 nn 代表徽章的边数,ll 代表徽章的周长。
输出
输出小 Y 所打造徽章的大小(结果可能是一个浮点数,如果你的答案与真实值相差 10−410−4 以内则被认为是正确的)。
样例输入
copy3 6样例输出
1.7320508076提示
为了保证精度,请尽量使用 double 类型,并定义 π=acos(−1)π=acos(−1),其中 acos 为反余弦函数(arccos),所需头文件为 math.h,以下为简单示例:
#include <math.h> double PI = acos(-1);
或定义 π=3.141592653589793π=3.141592653589793,示例:
double PI = 3.141592653589793;
来源
#include<stdio.h>
#include<iostream>
#include<math.h>
double PI = 3.141592653589793;
using namespace std;
int main()
{
double n, l;
cin >> n >> l;
printf("%.10lf",(l*l) / (4 * n*tan(PI / n)));
}
3408: 这是最简单的一道题
时间限制: 1 Sec 内存限制: 256 MB
提交: 357 解决: 158
[提交][状态][讨论版][命题人:im0qianqian]题目描述
大家都知道千千学长很厉害,今年他就要以全院第一的毕设成绩毕业了,什么时候我们才能有千千 limx→∞1xlimx→∞1x% 优秀呢,那就快来模一下千千吧!
已知千千的学号是 201558503244,你只需输出 nn 对它取模以后的结果即可!
这是一条华丽的分割线,以下是部分提示(要学会熟练使用哦)
- char 类型数据范围:[−128,+127][−128,+127],输入输出使用 %c
- int 类型数据范围:[−2147483648,+2147483647][−2147483648,+2147483647],输入输出使用 %d
- long long 类型数据范围:[−9223372036854775808,+9223372036854775807][−9223372036854775808,+9223372036854775807],输入输出使用 %lld
- 取模可以用运算符 %,如 a 对 b 取模为 a%b
以 char 类型为例,输入 scanf("%c", &c);,输出 printf("%c", &c);,其中 cc 为已定义的变量。输入
输入一个整数 nn,其中 0≤n≤10120≤n≤1012。(显然你需要使用 long long 类型来存储它)
输出
输出取模以后的结果。
样例输入
copy201558503247样例输出
3提示
QAQ 这个题目真的不是千千自己出的,看看样例就知道啦。
来源
#include<iostream>
using namespace std;
typedef long long ll;
int main()
{
ll n;
cin>>n;
cout<<n%(201558503244);
}
3409: 小俎的股票交易市场
时间限制: 1 Sec 内存限制: 256 MB
提交: 445 解决: 51
[提交][状态][讨论版][命题人:im0qianqian]题目描述
欢迎来到小俎的股票交易市场,由于我们现在的资源非常紧缺,因此只允许你交易一种股票。当然啦,我们也希望你可以在这里获利。
在清晨时,你有 nn 种机会可以购买股票,其中第 ii 种需要花费 sisi 枚硬币购买,你可以购买任意数量的股票(硬币足够的情况下)。
在傍晚时,你有 mm 种机会可以出售股票,其中第 ii 种方案出售获得 bibi 枚硬币,当然,你最多只能卖掉你持有的这些股票。
清晨时,你拥有 rr 枚硬币,在傍晚交易结束后请问你最多可以拥有多少枚硬币?输入
第一行输入三个整数 n,m,r (1≤n≤30,1≤m≤30,1≤r≤1000)n,m,r (1≤n≤30,1≤m≤30,1≤r≤1000)。
接下来的一行输入 nn 个整数 s1,s2,…,sns1,s2,…,sn,其中 1≤si≤10001≤si≤1000。
最后的一行输入 mm 个整数 b1,b2,…,bmb1,b2,…,bm,其中 1≤bi≤10001≤bi≤1000。输出
输出一个整数,代表交易结束后你所能拥有的最大硬币数。
样例输入
copy3 4 11 4 2 5 4 4 5 4样例输出
26来源
#include<iostream>
#include<algorithm>
using namespace std;
struct trade
{
int sn;
}coin[1001];
bool cmp1(trade a,trade b)
{
return a.sn<b.sn;
}
int bm[1001];
bool cmp2(int c,int d)
{
return c>d;
}
int main()
{
int n,m,r;
int sm;
cin>>n>>m>>r;
for(int i=0; i<n; i++)
cin>>coin[i].sn;
sort(coin,coin+n,cmp1);
for(int j=0; j<m; j++)
cin>>bm[j];
sort(bm,bm+m,cmp2);
int ans=(r/coin[0].sn)*bm[0]+r%coin[0].sn;
if(coin[0].sn>r||coin[0].sn>bm[0])
cout<<r;
else
cout<<ans;
}
3410: 磨人的小妖精
时间限制: 1 Sec 内存限制: 256 MB
提交: 382 解决: 73
[提交][状态][讨论版][命题人:im0qianqian]题目描述
小妖精与小泽学长今年双双考入了华东师范大学,备考期间,小妖精总是想着能否与小泽的距离更近一点,事实上,他们所生活的"二次元"世界是非常非常简单的,每一件事、每一个人都可以用一个小写的英文字符串来表示,而距离"近"则被定义为两个字符串完全一样。
小妖精有着"二次元"世界的一部分控制权,它可以以如下规则修改自己所被定义的字符串:
- 任何一个元音字母都可以被更改为任何的辅音字母
- 任何一个元音字母都可以以 (a→o→e→i→u→a)(a→o→e→i→u→a) 的顺序被更改为下一个元音字母
已知小妖精被定义为字符串 s1s1,小泽学长被定义为字符串 s2s2,且 s1,s2s1,s2 都是完全由小写英文字母所组成的字符串。
问:小妖精能否靠自己的能力与小泽学长更近一点呢?输入
输入包含两行,其中第一行为字符串 s1s1,第二行为字符串 s2s2,且 1≤|s1|,|s2|≤1000001≤|s1|,|s2|≤100000。
输出
如果两人可以走得很近则输出 Yes,否则输出 No。(PS:要祝福他们呀!)
样例输入
copyhello helle样例输出
Yes来源
#include<iostream>
#include<string.h>
char s1[100000], s2[100000];
using namespace std;
int main()
{
gets(s1);
gets(s2);
int lena = strlen(s1), lenb = strlen(s2), i;
if (lena != lenb)
cout << "No";
else
{
for (i = 0; i < lena; i++)
{
if (s1[i] == s2[i])
continue;
else
{
if (s1[i] == 'a' || s1[i] == 'e' || s1[i] == 'i' || s1[i] == 'o' || s1[i] == 'u')
{
if ((s1[i] == 'a'&&s2[i] == 'o') || (s1[i] == 'o'&&s2[i] == 'e') || (s1[i] == 'e'&&s2[i] == 'i') || (s1[i] == 'i'&&s2[i] == 'u') || (s1[i] == 'u'&&s2[i] == 'a')||(s2[i]!='a'&&s2[i]!='e'&&s2[i]!='i'&&s2[i]!='o'&&s2[i]!='u'))
continue;
else
break;
}
else
break;
}
}
if (i == lena)
cout << "Yes";
else
cout << "No";
}
}