网站建设 人天价格,同ip网站有什么影响,网站建设前端工程师岗位职责,注册公司有什么风险第一题#xff1a;受伤的皇后题目描述有一个 nn 的国际象棋棋盘#xff08;n 行 n 列的方格图#xff09;#xff0c;请在棋盘中摆放 n 个受伤的国际象棋皇后#xff0c;要求#xff1a;任何两个皇后不在同一行。任何两个皇后不在同一列。如果两个皇后在同一条 45 度角的…第一题受伤的皇后题目描述有一个 n×n 的国际象棋棋盘n 行 n 列的方格图请在棋盘中摆放 n 个受伤的国际象棋皇后要求任何两个皇后不在同一行。任何两个皇后不在同一列。如果两个皇后在同一条 45 度角的斜线上这两个皇后之间行号的差值至少为 3 。请问一共有多少种摆放方案。输入描述输入的第一行包含一个整数 n。其中1≤n≤10。输出描述输出一个整数表示答案。输入4输出2深搜对于每一行进行选择check判断列是否有对角线是否有 如果有则行差值大于等于三正对角线 行 列 该点 行 列反对角线 行- 该点行 列 - 该点列如果是dg,udg数组来表示dg[x y], udg[n - x y]来判断但是这种是正规皇后#includeiostream
using namespace std;const int N 12;
int a[12]; //表示第i行元素在第几列
int n, ans;bool check(int row, int y){for(int i 0 ; i row; i){if(a[i] y) return false;if(a[i] i row y row - i 3) return false;if(row - i y - a[i] row - i 3) return false;}return true;
}void dfs(int u){if(u n){ans;return ;}for(int i 0; i n; i){if(check(u, i)){a[u] i;dfs(u 1);a[u] 0;} }
}int main(){cinn;dfs(0);coutansendl;return 0;
}第二题完全平方数问题描述一个整数 a 是一个完全平方数, 是指它是某一个整数的平方, 即存在一个 整数 b, 使得ab2 。给定一个正整数 n, 请找到最小的正整数 x, 使得它们的乘积是一个完全平 方数。输入格式输入一行包含一个正整数 n 。输出格式输出找到的最小的正整数 x 。样例输入 112样例输出 13样例输入 215样例输出 215评测用例规模与约定对于 30 的评测用例, 1≤n≤1000, 答案不超过 1000 。对于 60 的评测用例, 1≤n≤108, 答案不超过 108 。对于所有评测用例,1≤n≤1012, 答案不超过 1012 。一个数是完全平方数一定有他分解得质因数得指数一定是偶数所以我们找到指数非偶数的质因数然后再乘到res里面就得到的最小要乘的数考察分解质因数#include iostream
using namespace std;typedef long long LL;int main()
{long long n;cinn;LL res 1;for(LL i 2; i n / i; i)if(n % i 0){LL s 0;while( n % i 0) s , n / i;if(s % 2) res * i;}if(n 1) res * n;coutresendl;return 0;
}