题意:
t组输入,给出一个n代表下面给出一个长为n的数组,你可以多次将一个a[i]赋值为a[j],若该数组总和能为奇数,则输出YES,否则输出NO。
题解:
统计n个数字种奇数的数量,偶数的数量和所有数的总和,若总和为奇数,输出YES,否则看奇偶数数量是否都不为零,都不为零输出YES,否则输出NO。
代码:https://codeforces.com/contest/1296/submission/70333151
题意:
t组输入,每次给出一个n元,因为每花10元可以额外获得一元,问最后最多花了多少钱。
题解:
暴力,模拟这个过程,每次将n减去(n-n%10)的钱,累加这笔减去的钱,n变为n%10+n/10,直到n小于10则退出,最后输出累加的钱加剩余的n。
代码:https://codeforces.com/contest/1296/submission/70333178
题意:
t组输入,给出一个n下面给出一个长为n的字符串,字符串由L,R,U和D组成,代表左右上下。若能优化,则只优化一次,且优化最短的字符串,输出优化区段的l和r,若不能则输出-1。
所谓优化则为在不改变最终目的地的前提下,减去一段区间。
题解:
使用pair代表现在的x和y,遇到L,R,U,D对p.first和p.second进行相应的操作,用map存现在的x和y并且赋值该位置的map为i+1(代表第几步到达此位置,方便等下统计),若在存之前发现该位置已经到过,对比是否比之前的区间更短,若更短则跟新区间,最后输出l和r。注意,一开始要将初始位置(0,0)加进map赋值为一,所以后面赋值才为i+1。
代码:https://codeforces.com/contest/1296/submission/70327395
题意:
给出n,a,b和k,代表有n个怪物,我的攻击力为a,同伴的攻击力b,我可以使同伴k次不攻击,接下来一行给出n个怪物的血量,我先进行攻击再到同伴,我若杀了怪物得一分,问我最多可以的多少分。
题解:
直接对每个怪物的血量进行处理,模等(a+b),若为0则加上(a+b),对怪物血量进行排序,若血量小于等于a则得分++,若血量大于a则减去a后除于a,得出的数若小于k则k减去该数且得分++,直至k不够为止退出循环。