本文共 3229 字,大约阅读时间需要 10 分钟。
A. Two Regular Polygons
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
You are given two integers nn and mm (m<nm<n). Consider a convex regular polygon of nn vertices. Recall that a regular polygon is a polygon that is equiangular (all angles are equal in measure) and equilateral (all sides have the same length).
转存失败Examples of convex regular polygons
Your task is to say if it is possible to build another convex regular polygon with mm vertices such that its center coincides with the center of the initial polygon and each of its vertices is some vertex of the initial polygon.
You have to answer tt independent test cases.
Input
The first line of the input contains one integer tt (1≤t≤1041≤t≤104) — the number of test cases.
The next tt lines describe test cases. Each test case is given as two space-separated integers nn and mm (3≤m<n≤1003≤m<n≤100) — the number of vertices in the initial polygon and the number of vertices in the polygon you want to build.
Output
For each test case, print the answer — "YES" (without quotes), if it is possible to build another convex regular polygon with mm vertices such that its center coincides with the center of the initial polygon and each of its vertices is some vertex of the initial polygon and "NO" otherwise.
Example
input
Copy
26 37 3
output
Copy
YESNO
Note
The first test case of the example
It can be shown that the answer for the second test case of the example is "NO".
猜的样例,看n是否能被m整除。
#includeusing namespace std;int main(){ ios::sync_with_stdio(false); int t,m,n; cin>>t; while(t--) { cin>>n>>m; if(n%m==0) puts("YES"); else puts("NO"); } return 0;}
B. Bogosort
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output
You are given an array a1,a2,…,ana1,a2,…,an. Array is good if for each pair of indexes i<ji<j the condition j−aj≠i−aij−aj≠i−ai holds. Can you shuffle this array so that it becomes good? To shuffle an array means to reorder its elements arbitrarily (leaving the initial order is also an option).
For example, if a=[1,1,3,5]a=[1,1,3,5], then shuffled arrays [1,3,5,1][1,3,5,1], [3,5,1,1][3,5,1,1] and [5,3,1,1][5,3,1,1] are good, but shuffled arrays [3,1,5,1][3,1,5,1], [1,1,3,5][1,1,3,5] and [1,1,5,3][1,1,5,3] aren't.
It's guaranteed that it's always possible to shuffle an array to meet this condition.
Input
The first line contains one integer tt (1≤t≤1001≤t≤100) — the number of test cases.
The first line of each test case contains one integer nn (1≤n≤1001≤n≤100) — the length of array aa.
The second line of each test case contains nn integers a1,a2,…,ana1,a2,…,an (1≤ai≤1001≤ai≤100).
Output
For each test case print the shuffled version of the array aa which is good.
Example
input
Copy
31741 1 3 563 2 1 5 6 4
output
Copy
71 5 1 32 4 6 1 3 5
倒排序一遍,输出。
#includeusing namespace std;int a[111];int main(){ ios::sync_with_stdio(false); int t,n; cin>>t; while(t--) { cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; sort(a+1,a+n+1); for(int i=n;i>=1;i--) cout< <<" "; cout<
转载地址:http://ptyzi.baihongyu.com/