关于阳辰楠抄袭标程得到 3/4 AK的通报批评
近日,阳辰楠同学场场比赛都抄袭标程,以此获得高分。这件事情遭到了许多同学的不满。还屡教不改,不承认自己抄标程的事情。我们在此通报批评阳辰楠同学。对他的行为提出强烈的谴责!希望其他同学可以引以为戒,诚信考试,不能抄标程。做一名诚信的OIer!
附录:感谢yjy同学的以身试法,让yy发现了ycn一直抄标程的肮脏行径。
证据
「Noip2023国庆集训A组Day2」叉叉计算
//YCN的代码
#include
using namespace std;
const int N = 100010;
int len, ans;
string s;
map vis;
map val;
stack s1, st2;
int main() {
freopen("cross.in", "r", stdin);
freopen("cross.out", "w", stdout);
cin >> s;
len = s.size();
for (int i = 0; i < len; i++) {
if (!vis[s[i]]) val[s[i]] = 0;
if (s1.empty()) s1.push(s[i]), vis[s[i]] = 1;
else {
if (!s1.empty() && s1.top() == s[i]) {
vis[s[i]] = 0;
ans += val[s[i]];
s1.pop();
continue;
} else if (s1.top() != s[i] && !vis[s[i]]) {
vis[s[i]] = 1;
s1.push(s[i]);
continue;
} else if (vis[s[i]] && !s1.empty()) {
while (s1.top() != s[i]) {
int u = s1.top();
s1.pop();
st2.push(u);
val[u]++;
}
s1.pop();
vis[s[i]] = 0;
ans += val[s[i]];
val[s[i]] = 0;
while (!s1.empty()) st2.push(s1.top()), s1.pop();
while (!st2.empty()) {
int u = st2.top();
st2.pop();
s1.push(u);
}
}
}
}
cout << ans;
return 0;
}
//标准程序 https://blog.csdn.net/weixin_30793643/article/details/97311282
#include
#include
#include
#include
证据2
「Noip2023国庆集训A组Day3」古老谜题
//ycn代码
#include
using namespace std;
const int N = 1e6 + 10;
typedef long long ll;
ll op, n, a[N], num[2], ne[N], sum[N], ans, cnt;
char c[N];
int main() {
freopen("puzzle.in", "r", stdin);
freopen("puzzle.out", "w", stdout);
cin >> op >> n;
for (int i = 1; i > c[i];
a[i] = c[i] - '0';
sum[i] = (a[i] + sum[i - 1]) % 2;
num[sum[i]]++;
}
cnt = n + 1;
for (int i = n; i >= 1; i--) {
ne[i] = cnt;
if (a[i] == 1) cnt = i;
}
for (int i = 1; i 1) num[sum[i - 1]]--;
ans += num[sum[i - 1] ^ 1];
if (a[i] == 0 && ne[i] <= n) ans--;
else if (a[i] == 1) ans -= ne[i] - i;
}
cout << ans;
return 0;
}
//标准程序 https://www.cnblogs.com/stoorz/p/13803822.html
#include
using namespace std;
typedef long long ll;
const int N=1000010;
int type,n,cnt[2],a[N],nxt[N],sum[N];
ll ans;
int main()
{
freopen("puzzle.in","r",stdin);
freopen("puzzle.out","w",stdout);
scanf("%d%d",&type,&n);
for (int i=1;i=1;i--)
{
nxt[i]=last;
if (a[i]==1) last=i;
}
for (int i=1;i1) cnt[sum[i-1]]--;
ans+=cnt[sum[i-1]^1];
if (!a[i] && nxt[i]<=n) ans--;
if (a[i]) ans-=(nxt[i]-i);
}
printf("%lld",ans);
return 0;
}
证据3
「Noip2023国庆集训A组Day3」礼物购买
这一条在讲题时被通报了
//ycn的代码
#include
#include
#include
#include
#include
#include
#include
#define LL long long
using namespace std;
inline LL read() {
LL d = 0, f = 1;
char s = getchar();
while (s '9') {
if (s == '-')
f = -1;
s = getchar();
}
while (s >= '0' && s y.v; }
int main() {
freopen("present.in", "r", stdin);
freopen("present.out", "w", stdout);
LL n = read(), m = read();
for (LL i = 1; i <= n; i++) {
a[i].v = read();
a[i].x = read();
b[i] = a[i].v;
}
sort(b + 1, b + 1 + n);
sort(a + 1, a + 1 + n, cmp);
for (LL i = 1; i <= n; i++) {
sum[i] = sum[i - 1] + a[i].x * a[i].v;
cnt[i] = cnt[i - 1] + a[i].x;
}
sum[n + 1] = b[n + 1] = a[n + 1].v = 1e18;
while (m--) {
LL w = read();
ans = 0;
for (LL i = 1; i <= n;) {
LL r = upper_bound(sum + 1, sum + 2 + n, sum[i - 1] + w) - sum;
w -= sum[r - 1] - sum[i - 1];
ans += cnt[r - 1] - cnt[i - 1];
ans += w / a[r].v;
w %= a[r].v;
i = n - (upper_bound(b + 1, b + n - r + 1, w) - b - 1) + 1;
}
printf("%lld\n", ans);
}
return 0;
}
笑着写检讨书的人,最为可恶。