🎆音乐分享
可以想象一下这个过程
这道题使用结构体是真的妙
#include<iostream>
using namespace std;
struct inform{
int num;
string name;
}arr[100010];
int main(){
int n,m;
cin>>n>>m;
for(int i=0;i<n;i++){
cin>>arr[i].num>>arr[i].name;
}
int t=0;
while(m--){
int a,b;
cin>>a>>b;
if((arr[t].num==0&&a==0)||(arr[t].num==1&&a==1))
t=(t+n-b)%n;
else
t=(t+n+b)%n;
}
cout<<arr[t].name;
return 0;
}
1015-零钱兑换_牛客竞赛语法入门班数组模拟、枚举、贪心习题 (nowcoder.com)
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
int ans=0;
for(int i=0;i<=n/5;i++)
{
for(int j=0;j<=n/2;j++)
{
for(int l=0;l<=n;l++)
{
if(5*i+2*j+l==n)
ans++;
else if(5*i+2*j+l>n)
break;
}
}
}
cout<<ans;
}
或者
#include<iostream>
using namespace std;
const int N = 210;
int f[N];
int main()
{
int w[] = {1, 2, 5};
int n; cin >> n;
f[0] = 1;
for(int i = 0; i < 3; i ++ )
for(int j = w[i]; j <= n; j ++ )
f[j] += f[j - w[i]];//先累加1的,再累加2的,再累加5的
cout << f[n] << endl;
return 0;
}
Code over!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/131384.html