喷一下今天的ICPC银川网络赛
ICPC银川网络赛办的什么玩意,把去年原题放上来了。那么肯定无效了啊,偷偷溜去补CF。
结束后收到了文件,这场网络赛居然有效!!!
宁夏理工学院真会玩,真.打个JB。
2019年9月3日又收到通知,周日重赛。
题目
A. Chips Moving
这题代码木有保存[尬笑]
B. Bad Prices
题意
一组n个数,统计后面存在比他小的数的个数。
思路
将数据反着读入数组,再向后遍历数组,同时保存当前的最小值,计数。
AC的代码
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<iomanip>//控制输出,<<setiosflags(ios::fixed)<<setprecision(9)
#include<string>
#include<vector>
#include<queue>
#include<stack>
#include<map>
using namespace std;
const int inf=0x3f3f3f3f;
int a[150005];
int main()
{
int t,n;
cin>>t;
while(t--)
{
int cnt=0;
scanf("%d",&n);
for(int i=n-1;i>=0;i--)
scanf("%d",&a[i]);//
int mini=a[0];
for(int i=1;i<n;i++)
{
if(a[i]>mini)
cnt++;
else
mini=a[i];
}
cout<<cnt<<endl;
}
return 0;
}
C. Book Reading
题意
n页书,求被m整除的页数的个位之和
思路
啊啊啊,和我原来写的思路差不多。
AC的代码
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<iomanip>//控制输出,<<setiosflags(ios::fixed)<<setprecision(9)
#include<string>
#include<vector>
#include<queue>
#include<stack>
#include<map>
using namespace std;
const int inf=0x3f3f3f3f;
typedef long long ll;
int main()
{
ll t,sum=0,n,m;
cin>>t;
while(t--)
{
sum=0;
scanf("%I64d%I64d",&n,&m);
ll c=m%10;//n的尾数
ll cnt=n/m;//能被整除的个数
ll cnt10=cnt/10;//尾数0~9为一组
ll res=cnt%10;
// printf("c=%lld\n",c);
ll cycle[10],ac=0;
for(int i=0;i<10;i++)
{
cycle[i]=(10+i)*m%10;
ac+=cycle[i];
}
sum=cnt10*ac;
for(int i=0;i<=res;i++)
{
sum+=cycle[i];
}
cout<<sum<<endl;
}
return 0;
}