結果
| 問題 | No.751 Frac #2 |
| コンテスト | |
| ユーザー |
aaa
|
| 提出日時 | 2018-11-09 22:32:13 |
| 言語 | C++14 (gcc 15.3.0 + boost 1.92.0 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 2,270 bytes |
| 記録 | |
| コンパイル時間 | 533 ms |
| コンパイル使用メモリ | 113,980 KB |
| 実行使用メモリ | 9,928 KB |
| 最終ジャッジ日時 | 2026-09-27 09:37:27 |
| 合計ジャッジ時間 | 2,507 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge4_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 6 WA * 30 |
ソースコード
#include <stdio.h>
#include <algorithm>
#include <iostream>
#include <string>
#include <vector>
#include <functional>
#include <map>
#include <iomanip>
#include <math.h>
#include <stack>
#include <queue>
#include <bitset>
#include <cstdlib>
#include <tuple>
#include <cctype>
#include <ctype.h>
#include <set>
#include <sstream>
using namespace std;
int main() {
int i, j;
int n1, n2;
//vector<double>a, b;
vector<int>a, b;
int mai1 = 0, mai2 = 0;
cin >> n1;
for (i = 0; i < n1; i++) {
//double num;
int num;
cin >> num;
a.push_back(num);
if (num < 0) mai1++;
}
cin >> n2;
for (i = 0; i < n2; i++) {
//double num;
int num;
cin >> num;
b.push_back(num);
if (num < 0) mai2++;
}
//double ans1 = 0, ans2 = 0;
int ans1 = 0, ans2 = 0;
a[0] = abs(a[0]);
b[0] = abs(b[0]);
if (n2 >= 2) {
for (i = b.size() - 1; i >= 1; i--) {
//a[0] *= b[i];
a[0] *= abs( b[i]);
}
}
if (n1 >= 2) {
for (i = a.size() - 1; i >= 1; i--) {
//b[0] *= a[i];
b[0] *= abs( a[i]);
}
}
vector<int>slist = { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83 ,89 ,97 ,101 ,103 ,107 ,109 ,113 ,127 ,131 ,137 ,139 ,149 ,151 ,157 ,163 ,167 ,173 ,179 ,181 ,191 ,193 ,197 ,199 ,211 ,223 ,227 ,229 ,233 ,239 ,241 ,251 ,257 ,263 ,269 ,271 ,277 ,281 };
while (true)
{
bool flag = false;
for (i = 0; i < slist.size(); i++) {
if (a[0] % slist[i] == 0 && b[0] % slist[i] == 0) {
a[0] /= slist[i];
b[0] /= slist[i];
flag = true;
}
}
if (flag == false) break;
}
if (mai1 % 2 == 0) {
mai1 = 0;
}
else {
mai1 = 1;
}
if (mai2 % 2 == 0) {
mai2 = 0;
}
else {
mai2 = 1;
}
if (mai1 == 1) {
a[0] = 0 - abs(a[0]);
}
if (mai2 == 1) {
b[0] = 0 - abs(b[0]);
}
cout << a[0] << " " << b[0] << endl;
//if (n1 == 1) {
// ans1 = a[0];
//}
//else {
// ans1 = a[0];
// for (i = 1; i < n1; i++) {
// //ans1 = a[i] / a[i + 1];
// ans1 = ans1 / a[i];
// }
//}
//if (n2 == 1) {
// ans2 = b[0];
//}
//else {
// ans2 = b[0];
// for (i = 1; i < n2; i++) {
// //ans2 = b[i] / b[i + 1];
// ans2 = ans2 / b[i];
// }
//}
//double ans3 = (ans1 / ans2);
//cout << ans3 << " " << 1 << endl;
getchar();
getchar();
return 0;
}
aaa