Codeforces 1166B - All the Vowels Please

Posted carered

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces 1166B - All the Vowels Please相关的知识,希望对你有一定的参考价值。

题目链接:http://codeforces.com/problemset/problem/1166/B

技术图片

技术图片

技术图片


题意:问你是否存在一个长度为 k 的字符串,使得你将他们平铺成一个矩形之后,每行每列都包含 5 个元音。

思路:先判断能否弄出至少5*5的行列,然后按顺序填字符串就好了。

AC代码:

 1 #include<iostream>
 2 #include<cstdio>
 3 #include<string>
 4 using namespace std;
 5 int main()
 6 {
 7     int k,m,n;
 8     string a = "aeiou";
 9     cin >> k;
10     for( n = 5;n * n <= k && k % n != 0;n++);
11     m = k / n;
12     if(k % n || m < 5) cout << "-1" << endl;
13     else
14     {
15         for(int i = 0;i < k;i++)
16             cout << a[(i % m + i /m)%5];
17     }
18     return 0;
19 }

 

以上是关于Codeforces 1166B - All the Vowels Please的主要内容,如果未能解决你的问题,请参考以下文章

Codeforces731D 80-th Level Archeology

Codeforces 622F The Sum of the k-th Powers

[codeforces] 498D Traffic Jams in th Land

codeforces 622F. The Sum of the k-th Powers 拉格朗日插值法

Links of All in Twente(Updatesd Aug,7th)

CodeForces - 982C Cut 'em all!