Submission #735658
Source Code Expand
#include <iostream>
#include <iomanip>
#include <string>
#include <stack>
#include <math.h>
#include <vector>
using namespace std;
#define REP(i,k,n) for(int i=k;i<n;i++)
#define rep(i,j) for(int i=0;i<j;i++)
#define PI acos(-1)
typedef long long ll;
typedef pair<int,int> P;
double f(double H, double R){
return R * R * PI * H;
}
int main(){
int N,Q;
cin >> N >> Q;
vector<int> X(N), R(N), H(N);
rep(i, N) cin >> X[i] >> R[i] >> H[i];
rep(i,Q){
double a, b;
cin >> a >> b;
double sum = 0;
rep(j, N){
double x = X[j], r = R[j], h = H[j];
if(a <= x && x + h <= b) {
sum += f(h, r);
} else if(x <= a && a <= x + h && x + h <= b) {
double h2 = x + h - a;
double r2 = (r * h2) / h;
sum += f(h2, r2);
} else if(a <= x && x <= b && b <= x + h) {
double h2 = x + h - b;
double r2 = (r * h2) / h;
sum += f(h, r) - f(h2, r2);
} else if(x <= a && b <= x + h) {
double h1 = x + h - a;
double r1 = (r * h1) / h;
double h2 = x + h - b;
double r2 = (r * h2) / h;
sum += f(h1, r1) - f(h2, r2);
}
}
cout << fixed;
cout.precision(20);
cout << sum / 3.0 << endl;
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | B - 円錐 |
| User | yori1029 |
| Language | C++14 (Clang 3.8.0) |
| Score | 100 |
| Code Size | 1240 Byte |
| Status | AC |
| Exec Time | 8 ms |
| Memory | 512 KiB |
Judge Result
| Set Name | Sample | Subtask1 | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 100 / 100 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample_01.txt, sample_02.txt |
| Subtask1 | sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt, subtask1_33.txt, subtask1_34.txt, subtask1_35.txt, subtask1_36.txt, subtask1_37.txt, subtask1_38.txt, subtask1_39.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| sample_01.txt | AC | 8 ms | 512 KiB |
| sample_02.txt | AC | 4 ms | 256 KiB |
| subtask1_01.txt | AC | 6 ms | 256 KiB |
| subtask1_02.txt | AC | 5 ms | 256 KiB |
| subtask1_03.txt | AC | 6 ms | 256 KiB |
| subtask1_04.txt | AC | 5 ms | 256 KiB |
| subtask1_05.txt | AC | 4 ms | 256 KiB |
| subtask1_06.txt | AC | 5 ms | 256 KiB |
| subtask1_07.txt | AC | 4 ms | 256 KiB |
| subtask1_08.txt | AC | 5 ms | 256 KiB |
| subtask1_09.txt | AC | 5 ms | 256 KiB |
| subtask1_10.txt | AC | 5 ms | 256 KiB |
| subtask1_11.txt | AC | 6 ms | 256 KiB |
| subtask1_12.txt | AC | 6 ms | 256 KiB |
| subtask1_13.txt | AC | 6 ms | 256 KiB |
| subtask1_14.txt | AC | 5 ms | 256 KiB |
| subtask1_15.txt | AC | 6 ms | 256 KiB |
| subtask1_16.txt | AC | 7 ms | 256 KiB |
| subtask1_17.txt | AC | 6 ms | 256 KiB |
| subtask1_18.txt | AC | 6 ms | 256 KiB |
| subtask1_19.txt | AC | 6 ms | 256 KiB |
| subtask1_20.txt | AC | 6 ms | 256 KiB |
| subtask1_21.txt | AC | 6 ms | 256 KiB |
| subtask1_22.txt | AC | 6 ms | 256 KiB |
| subtask1_23.txt | AC | 6 ms | 256 KiB |
| subtask1_24.txt | AC | 6 ms | 256 KiB |
| subtask1_25.txt | AC | 6 ms | 256 KiB |
| subtask1_26.txt | AC | 6 ms | 256 KiB |
| subtask1_27.txt | AC | 6 ms | 256 KiB |
| subtask1_28.txt | AC | 6 ms | 256 KiB |
| subtask1_29.txt | AC | 6 ms | 256 KiB |
| subtask1_30.txt | AC | 6 ms | 256 KiB |
| subtask1_31.txt | AC | 6 ms | 256 KiB |
| subtask1_32.txt | AC | 6 ms | 256 KiB |
| subtask1_33.txt | AC | 6 ms | 256 KiB |
| subtask1_34.txt | AC | 6 ms | 256 KiB |
| subtask1_35.txt | AC | 6 ms | 256 KiB |
| subtask1_36.txt | AC | 6 ms | 256 KiB |
| subtask1_37.txt | AC | 6 ms | 256 KiB |
| subtask1_38.txt | AC | 6 ms | 256 KiB |
| subtask1_39.txt | AC | 7 ms | 256 KiB |