列表

详情


NC14613. Permutation

描述

A mod-dot product between two arrays with length n produce a new array with length n. If array A is a1,a2,...,an and array B is b1,b2,...bn, then A mod-dot B produce an array C c1,c2,...,cn such that c1 =  a1*b1%n, c2 = a2*b2%n,...,ci = ai*bi%n,..., cn = an*bn%n.
i.e. A = [2,3,4] and B = [5,2,2] then A mod-dot B = [1,0,2].
A permutation of n is an array with length n and every number from 0 to n-1 appears in the array by exactly one time.
i.e. A = [2,0,1] is a permutation of 3, and B = [3,4,1,2,0] is a permutation of 5, but C = [1,2,2,3] is NOT a permutation of 4.
Now comes the problem: Are there two permutaion of n such that their mod-dot product is also a permutation of n?

输入描述

The only line with the number n (1 <= n <= 1000)

输出描述

If there are such two permutation of n that their mod-dot product is also a permutation of n, print "Yes" (without the quote). Otherwise print "No" (without the quote).

示例1

输入:

2

输出:

Yes

说明:

A = [0,1] and B = [0,1]. Then A mod-dot B = [0,1]

示例2

输入:

997

输出:

No

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++11(clang++ 3.9) 解法, 执行用时: 4ms, 内存消耗: 608K, 提交时间: 2020-02-20 23:47:53

#include<stdio.h>
int main()
{
	int n;
	while(~scanf("%d",&n))
	{
		printf("%s\n",n>2?"No":"Yes");
	}
	return 0;
}

Python3(3.9) 解法, 执行用时: 19ms, 内存消耗: 2780K, 提交时间: 2021-01-29 13:08:40

n=int(input())
if(n>2):
    print('No')
else:
    print('Yes')

上一题