浅谈getchar
发布日期:2021-09-29 21:09:54 浏览次数:2 分类:技术文章

本文共 1992 字,大约阅读时间需要 6 分钟。

我们知道getchar是用来吸收\n 的,话不多说,举个简单的例子:

Anton likes to play chess, and so does his friend Danik.

Once they have played n games in a row. For each game it's known who was the winner — Anton or Danik. None of the games ended with a tie.

Now Anton wonders, who won more games, he or Danik? Help him determine this.

Input

The first line of the input contains a single integer n (1 ≤ n ≤ 100 000) — the number of games played.

The second line contains a string s, consisting of n uppercase English letters 'A' and 'D' — the outcome of each of the games. The i-th character of the string is equal to 'A' if the Anton won the i-th game and 'D' if Danik won the i-th game.

Output

If Anton won more games than Danik, print "Anton" (without quotes) in the only line of the output.

If Danik won more games than Anton, print "Danik" (without quotes) in the only line of the output.

If Anton and Danik won the same number of games, print "Friendship" (without quotes).

Examples

Input

6ADAAAA

Output

Anton

Input

7DDDAADA

Output

Danik

Input

6DADADA

Output

Friendship

Note

In the first sample, Anton won 6 games, while Danik — only 1. Hence, the answer is "Anton".

In the second sample, Anton won 3 games and Danik won 4 games, so the answer is "Danik".

In the third sample, both Anton and Danik won 3 games and the answer is "Friendship".

题目很简单,但是我写的代码一直ac不了,加上getchar之后就ac了,原因很简单,不管是杭电还是其他网页上的编译器,即便你没有多次获取一个值,它也会自动运行多次,我们平时从键盘输入的字符都会存到缓存区里面,包括回车字符,getchar是从缓存区读入一个字符,用法是ch=getchar();如果想要去除缓存区里面的字符,那么就不用赋值,直接getchar();

比如输入”123回车“之后,缓存区就会存入四个字符,第一个是“1”,第二个是“2”,第三个是“3”,第四个是“\n”(换行符,即回车),而getchar每次只从缓存区提取一个字符,假如你提取了三个字符之后,那么缓存区里面就会剩下一个回车,你再输入“123回车”之后,缓存区里面的字符就是
”\n123\n“,这个时候再用getchar()来键入字符,就会提取到\n,所以我们每次键入完之后,就会使用不赋值的getchar();这样的语句来讲换行符吸收掉。
下面是代码:

#include
using namespace std;main() { int n; char a; scanf("%d",&n); int cnt1=0,cnt2=0; getchar();//***********要有getchar for(int i=0; i
cnt2) printf("Anton\n"); else if(cnt1==cnt2) printf("Friendship\n"); else printf("Danik\n"); return 0;}

 

转载地址:https://blog.csdn.net/hou_shiyu/article/details/81435835 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:十进制转二进制
下一篇:常见错误类型

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月03日 11时21分02秒