如何自学网站建设书籍,在线服务器网站,茂名网站建设公司,门户网站是指第一题#xff1a;纸张尺寸问题描述在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm 841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。输入纸张的名称, 请输出…第一题纸张尺寸问题描述在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm ×841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm × 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。输入纸张的名称, 请输出纸张的大小。输入格式输入一行包含一个字符串表示纸张的名称, 该名称一定是 A0、A1、A2、 A3、A4、A5、A6、A7、A8、A9 之一。输出格式输出两行每行包含一个整数依次表示长边和短边的长度。样例输入 2A1样例输出 2841
594就是模拟每次除二向下取整 floor始终保存a b即可#includeiostream
#includemath.h
using namespace std;int main(){char op[2];cinop;double a 1189, b 841;int n op[1] - 0;for(int i 0; i n; i){a floor(a / 2);if(a b){int t a;a b;b t;}}// coutfloor(1.1)endl; //向下取整// coutceil(1.1)endl; //向上取整// coutround(1.1)endl; //四舍五入coutint(a)endlint(b)endl;return 0;
}
第二题最大数字问题描述给定一个正整数 N 。你可以对 N 的任意一位数字执行任意次以下 2 种操 作将该位数字加 1 。如果该位数字已经是 9 , 加 1 之后变成 0 。将该位数字减 1 。如果该位数字已经是 0 , 减 1 之后变成 9 。你现在总共可以执行 1 号操作不超过 A 次, 2 号操作不超过 B 次。 请问你最大可以将 N 变成多少?输入格式第一行包含 3 个整数: N,A,B 。输出格式一个整数代表答案。对于 30% 的数据,1≤N≤100;0≤A,B≤10。对于 100% 的数据, 1≤N≤1017;0≤A,B≤100样例输入123 1 2样例输出933dfs, 从高位到低位考虑每个位置高位能变大就使用操作尽可能变大所得到的数就能最大记得回溯还有数据范围#includeiostream
using namespace std;typedef long long LL;
string str;
int n, m;
LL ans 0;void dfs(int i, LL v){//考虑每个位置int x str[i] - 0; if(str[i]){//操作1的 操作次数int t min(n, 9 - x);n - t;dfs(i 1, v * 10 x t);//回溯n t;//考虑操作2 是否可以if(m x){m - x 1;dfs(i 1, v * 10 9);//回溯m x 1; }}elseans max(ans, v);
}int main(){cinstrnm;dfs(0, 0); coutansendl;return 0;
}第三题全排列的价值全排列的价值 - 蓝桥云课 (lanqiao.cn)推公式数学问题#include bits/stdc.h
using namespace std;
using ll long long;
const ll mod 998244353;int main () {ll n; cin n;ll ans 1;//计算 阶乘除以2for(int i 3; i n; i) {//从3开始是因为在这一步直接将2除掉了 避免除法ans (ans * i) % mod;}//乘以C(2, n)ans (ans * ((n * (n - 1) / 2) % mod)) % mod;cout ans endl;return 0;
}