题目名称 | 999. [東方S2] 雾雨魔理沙 |
---|---|
输入输出 | marisa.in/out |
难度等级 | ★★☆ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 10 |
题目来源 | 王者自由 于2012-08-08加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:24, 提交:50, 通过率:48% | ||||
ZlycerQan | 100 | 0.061 s | 0.38 MiB | C++ |
HouJikan | 100 | 0.064 s | 0.38 MiB | C++ |
6娃 | 100 | 0.082 s | 0.42 MiB | C++ |
6娃 | 100 | 0.083 s | 0.42 MiB | C++ |
onlysky | 100 | 0.084 s | 0.44 MiB | C++ |
onlysky | 100 | 0.087 s | 0.44 MiB | C++ |
6娃 | 100 | 0.090 s | 0.42 MiB | C++ |
王者自由 | 100 | 0.095 s | 0.41 MiB | C++ |
6娃 | 100 | 0.097 s | 0.39 MiB | C++ |
水中音 | 100 | 0.112 s | 0.44 MiB | C++ |
本题关联比赛 | |||
东方幻想乡 S2 |
关于 雾雨魔理沙 的近10条评论(全部评论) | ||||
---|---|---|---|---|
#include<iostream>
#include <cstdio> #include<iomanip> using namespace std; int main() { freopen("xiangsidu.in","r",stdin); freopen("xiangsidu.out","w",stdout); double a[100][100],b[100][100],c,d,z=0; cin>>c>>d; for(int m=0;m<c;m++) { for(int j=0;j<d;j++) { cin>>a[m][j]; } } for(int m=0;m<c;m++) { for(int j=0;j<d;j++) { cin>>b[m][j]; } } for(int m=0;m<c;m++) { for(int j=0;j<d;j++) { if(a[m][j]==b[m][j]) { z++; } } } cout<<setiosflags(ios::fixed)<<setprecision(2); cout<<z/(c*d)*100; }
10001
2018-11-26 20:46
3楼
| ||||
不开double精度问题跪哭QAQ ……
| ||||
弧度和角度互化错了,我的数学一定是信息老师教的OTZZZZZZZZZZZZZZZZZ
2333333333333333333333333333 |
Problem 3 |
雾雨魔理沙(marisa.cpp/c/pas) |
|
题目描述 |
在幻想乡,雾雨魔理沙(きりさめ まりさ) 蓝色部分上下两条长边之间就是这次八卦炉的攻击范围,在蓝色范围内的毛玉(红点)属于该此被击中的毛玉,如果一个毛玉刚好在边界上也视为被击中。毛玉击中以后就会消失,每次发射八卦炉得到分值是该次击中毛玉的分值和乘上这些毛玉平均的倍率,设该次击中的毛玉集合为S,则分值计算公式为: Score = SUM{value[i] | i 属于 S} * SUM{mul[i] | i 属于 S} / |S| 其中|S|表示S的元素个数。魔理沙将会使用若干次八卦炉,直到把所有毛玉全部击中。任意两次攻击的范围均不重叠。最后得到的分值为每次攻击分值之和。现在请你计算出能够得到的最大分值。 |
|
输入格式 |
第1行:1个整数N,表示毛玉个数 第2..N+1行:每行四个整数x, y, value, mul,表示星星的坐标(x,y),以及value和mul 第N+2行:1个整数α,表示倾斜角角度,0°到180° |
|
输出格式 |
第1行:1个实数,表示最大分值,保留三位小数 |
|
输入样例 |
3 1 3 3 1 2 1 2 2 3 4 2 1 45 |
|
输出样例 |
9.333 |
|
数据范围 |
对于60%的数据:1 <= N <= 500 对于100%的数据:1 <= N <= 2,000 -10,000 <= x,y <= 10,000 1 <= value,mul <= 100 |
|
注意 |
π = 3.1415926 |