电子商务网站建设需求分析报告,PC网站开发的意义,培训网站建设平台,合水口网站建设文章目录 11、构造11.1、小浩的ABC11.2、小新的质数序列挑战11.3、小蓝找答案11.4、小蓝的无限集 12、高精度12.1、阶乘数码(高精度*单精度) 11、构造
11.1、小浩的ABC
#includebits/stdc.h
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(n… 文章目录 11、构造11.1、小浩的ABC11.2、小新的质数序列挑战11.3、小蓝找答案11.4、小蓝的无限集 12、高精度12.1、阶乘数码(高精度*单精度) 11、构造
11.1、小浩的ABC
#includebits/stdc.h
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
using ll long long;int main(){IOS;int t;cint;while(t--){ll x;cinx;// A B C 10^6if(x2){cout-1\n;continue;}if(x1000000){coutx-1 1 1\n;continue;}ll a1000000,cx%a,b;if(c0)ca;b(x-c)/a;couta b c\n;}return 0;
}
11.2、小新的质数序列挑战
#includebits/stdc.h
using namespace std;
#define IOS ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
using ll long long;int main(){IOS;int T;cinT;while(T--){//质数序列只能被1或本身整除的序列ll a,b;cinab;if(a1||b1){cout-1\n;continue;}auto gcd [](ll a,ll b){while(b!0){ll ta%b;ab;bt;}return a;};ll ggcd(a,b);if(g1){cout1\n;}else{cout0\n;}}return 0;
}11.3、小蓝找答案
#include bits/stdc.husing LL long long;
using Pair std::pairint, int;
#define inf 1000000000void solve(const int Case) {int n;std::cin n;std::vectorint a(n);for (auto x: a)std::cin x;auto ck []() {for (int i 1; i n; i) {if (a[i] a[i - 1])return false;}return true;};if (ck()) {std::cout 1\n;return;}int l 2, r n, ret n;while (l r) {int mid (l r) 1;std::vectorPair A;int flag 0;std::functionvoid(int) push [](int x) {if (x 0) {flag 1;return;}while (!A.empty() A.back().first x)A.pop_back();if (A.empty()) {A.emplace_back(x, 1);return;}if (A.back().first x) {A.back().second;if (A.back().second mid) {push(x - 1);A.emplace_back(x, 0);}}else {A.emplace_back(x, 1);}};A.emplace_back(a[0], 0);for (int i 1; i n; i) {if (a[i] a[i - 1])A.emplace_back(a[i], 0);else push(a[i]);if (flag)break;}if (flag)l mid 1;else {ret mid;r mid - 1;}}std::cout ret \n;
}int main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int T 1;
// std::cin T;for (int Case 1; Case T; Case)solve(Case);return 0;
}11.4、小蓝的无限集
#include bits/stdc.husing LL long long;
using Pair std::pairint, int;
#define inf 1000000000void solve(const int Case) {int a, b, n;std::cin a b n;if (a 1) {if (n % b 1)std::cout Yes\n;else std::cout No\n;return;}// 枚举 a ^ iLL pw 1;while (pw n) {if ((n - pw) % b 0) {std::cout Yes\n;return;}pw * a;}std::cout No\n;
}int main() {std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int T 1;std::cin T;for (int Case 1; Case T; Case)solve(Case);return 0;
}12、高精度
12.1、阶乘数码(高精度*单精度)
#includebits/stdc.h
#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
using namespace std;
void mult(vectorint a,int b){int d0;for(int i0;ia.size();i){int pa[i]*bd;a[i]p%10;dp/10;}while(d){a.push_back(d%10);d/10;}
}
int main() {IOS;int t;cint;while(t--){int n,a1;cinna1;vectorint ans(1,1);for(int i2;in;i){mult(ans,i);//n的阶乘}int res0;for(const auto x:ans){if(xa1)res;}coutres\n;}return 0;
}越来越难了。。。。。