洛谷
noon/moon
这个作者很懒,什么都没留下…
展开
-
4336: 回文数beta
好题!#include <bits/stdc++.h>using namespace std;#define f(a) (isdigit(a)?a-'0':a-'A'+10)string num="0123456789ABCDEF";string add(int n,string b){ string a=b; reverse(b.begin(),b.end(...原创 2019-12-05 18:01:32 · 166 阅读 · 0 评论 -
P1203 [USACO1.1]坏掉的项链Broken Necklace
很有意思的一道题我的做法:1.在原珠串左右再各接一原珠串,这样就可以很方便地左右遍历了2.用vis[n]表示原珠串各点,对下标进行%n操作以找到对应的原珠串点3.枚举断点,在左右遍历过程中连续的珠子在vis数组中标为1,左右遍历完后数组中1的个数即为该断点最多拿到珠子的总个数,然后输出最大值即可#include <bits/stdc++.h>using namespace ...原创 2019-11-21 23:45:14 · 125 阅读 · 0 评论 -
P1202 [USACO1.1]黑色星期五Friday the Thirteenth
#include <bits/stdc++.h>using namespace std;int d[7],mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};int main(){ int n;cin>>n; for(int i=1900,d=0;i<=1900+n-1;i++) for...原创 2019-11-21 17:48:37 · 276 阅读 · 0 评论 -
P1865 A % B Problem
我和编程也是大抵如此吧#include <bits/stdc++.h>using namespace std;int n,m,l,r;int sum[1000100];bool isprime(int n){ for(int i=2;i*i<=n;i++) if(n%i==0) return false; return true;}...原创 2019-11-21 00:19:02 · 126 阅读 · 0 评论 -
P1012 拼数(排序)
比较s[i]+s[j]和s[j]+s[i],如果后者大就交换s[i]和s[j]的位置比如321和32,32132<32321,而二者比较时321是大于32的,所以此时需要交换位置#include <iostream>#include <algorithm>using namespace std;int main(){ int n;cin>>...原创 2019-09-17 00:16:19 · 133 阅读 · 0 评论 -
P1603 斯诺登的密码(字符串处理)
int、long会爆范围,要用longlong才行long也会爆的原因可能是int<=long,所以如果long也爆了的话可能不是程序的问题AC代码:#include <bits/stdc++.h>using namespace std;int main(){ /*映射部分*/ string s[6]; long long num[6]={0},su...原创 2019-09-15 21:59:33 · 191 阅读 · 0 评论 -
P1031 均分纸牌(贪心)
把当前牌堆与平均之差交给后面的来解决#include <iostream>using namespace std;int main(){ int n; cin>>n; int a[n],sum=0; for(int i=0;i<n;i++){ cin>>a[i]; sum+=a[i];...原创 2019-09-13 21:05:47 · 183 阅读 · 0 评论 -
P1563 玩具谜题(模拟)
小人面朝内外的左右移动可以视为一个指向小人的变量的加减另外应该注意变量小于0或大于n时的情况#include <iostream>using namespace std;int n,m,a,b,p;int s[2][2]={{-1,1},{1,-1}};//加或减struct node{ int f; string name;};int main(){...原创 2019-09-12 17:43:11 · 226 阅读 · 0 评论 -
P1328 生活大爆炸版石头剪刀布(模拟/散列)
我的代码:#include <iostream>using namespace std;int main(){ int n,na,nb; cin>>n>>na>>nb; int a[na],b[nb]; for(int i=0;i<na;i++) cin>>a[i]; f...原创 2019-09-12 16:33:51 · 185 阅读 · 0 评论 -
P1056 排座椅(排序/结构体)
贪心排过后还要再按序号从小到大再排一遍#include <iostream>#include <algorithm>using namespace std;struct Node{ int num;// 行/列号 int cnt;// 该行/列说话人数};bool cmp(Node a,Node b){//第一遍将说话人数多的行列排到前面 ...原创 2019-09-12 15:31:01 · 209 阅读 · 0 评论 -
P1540 机器翻译(模拟/散列)
模拟:#include <iostream>#include <cstring>using namespace std;int main(){ int m,n; cin>>m>>n; int a[m],p=0,cnt=0,t; memset(a,-1,m*sizeof(int)); while(cin&...原创 2019-09-12 13:17:26 · 115 阅读 · 0 评论 -
P1914 小书童 密码(模拟)
原题:https://www.luogu.org/problem/P1914这一题我一定得写一篇博客刚开始我一看是入门难度说这不是随便写么#include <bits/stdc++.h>using namespace std;int main(){ int n; string s; cin>>n>>s; for(int ...原创 2019-09-02 00:34:00 · 209 阅读 · 0 评论 -
P1067 多项式输出(逻辑)
这题和P1022 计算器的改良有许多相似之处都是分割到最小单元然后进行操作另附我受益颇多的一篇该题的题解#include <iostream>using namespace std;int main(){ int n; cin>>n; int a[n+1]={0}; for(int i=n;i>=0;i--) ...原创 2019-09-11 23:47:55 · 98 阅读 · 0 评论 -
P1003 铺地毯 (简单数学)
刚开始感觉有点难,似乎要不停地标记每个点的覆盖地毯编号。看到普及-的难度就又想了想,发现其实是很简单的一道模拟题加一点数学。#include <iostream>using namespace std;struct node{ int x,y; int l,h;};int main(){ int n; cin>>n; no...原创 2019-09-11 22:37:03 · 445 阅读 · 0 评论