博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codeforces 1312 A B
阅读量:3952 次
发布时间:2019-05-24

本文共 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).

4b1833ce71bfcf123d99f1adc7364c8c4ec3b20b.pnguploading.4e448015.gif转存失败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整除。

#include 
using 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

倒排序一遍,输出。

#include 
using 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/

你可能感兴趣的文章
idea编译报错类似xxx.java:[85,65] 错误: 找不到符号
查看>>
ArrayList复制
查看>>
idea打开项目时,文件左下角显示橙色J
查看>>
SQL注入
查看>>
linux中ldconfig的使用介绍
查看>>
ldap学习参考博客
查看>>
linux学习之source命令与alias(别名)使用
查看>>
MYSQL常用查询
查看>>
安装Linux虚拟机绑定IP操作
查看>>
centos7离线安装 mysql
查看>>
mysql学习使用一(查询)
查看>>
Linux 学习之sed命令详解
查看>>
JAVA基础——常用IO使用
查看>>
spring框架pom.xml文件解析
查看>>
代码比较工具DiffMerge的下载和使用
查看>>
linux学习之vim全选,全部复制,全部删除
查看>>
linux 学习之awk命令
查看>>
linux学习之查找文件find,locate,whereis使用
查看>>
JS中$含义及用法
查看>>
web学习之ajax记录
查看>>