UVa 327 Evaluating Simple C Expressions
/*
coder: ACboy
date: 2010-3-14
result: 1A
description: UVa 327 Evaluating Simple C Expressions
*/
#include <iostream>
#include <algorithm>
using namespace std;
struct Node {
char name;
int value;
int lastValue;
int pos;
};
int cmp(const Node & a, const Node & b)
{
return a.name < b.name;
}
Node data[30];
int vis[256];
int main()
{
char input[256];
char temp[256];
char Temp[256];
#ifndef ONLINE_JUDGE
freopen("327.txt", "r", stdin);
#endif
while (gets(input))
{
int i, j;
int c = 0;
int count = 0;
int len = strlen(input);
for (i = 0; i < len; i++)
{
if (input[i] != ' ') {
temp[c++] = input[i];
if (isalpha(input[i])) {
data[count].name = input[i];
data[count].value = input[i] - 'a' + 1;
data[count].lastValue = data[count].value;
data[count].pos = c - 1;
count++;
}
}
temp[c] = '\0';
}
memset(vis, 0, sizeof(vis));
for (i = 0; i < count; ++i) {
int pos = data[i].pos;
if (pos - 2 >= 0) {
if (temp[pos - 1] == temp[pos - 2] && temp[pos - 1] == '-') {
data[i].value--;
data[i].lastValue = data[i].value;
vis[pos - 1] = 1;
vis[pos - 2] = 1;
}
if (temp[pos - 1] == temp[pos - 2] && temp[pos - 1] == '+') {
data[i].value++;
data[i].lastValue = data[i].value;
vis[pos - 1] = 1;
vis[pos - 2] = 1;
}
}
if (pos + 2 < len) {
if (temp[pos + 1] == temp[pos + 2] && temp[pos + 1] == '-') {
data[i].lastValue = data[i].value - 1;
vis[pos + 1] = vis[pos + 2] = 1;
}
if (temp[pos + 1] == temp[pos + 2] && temp[pos + 1] == '+') {
data[i].lastValue = data[i].value + 1;
vis[pos + 1] = vis[pos + 2] = 1;
}
}
}
c = 0;
for (i = 0; i < len; ++i)
{
if (!vis[i]) {
Temp[c++] = temp[i];
}
}
Temp[c] = '\0';
len = strlen(Temp);
Ïà¹ØÎĵµ£º
Android±àÒë»·¾³±¾Éí±È½Ï¸´ÔÓ£¬ÇÒ²»ÏñÆÕͨµÄ±àÒë»·¾³£ºÖ»Óж¥²ãĿ¼Ï²ÅÓÐMakefileÎļþ£¬¶øÆäËûµÄÿ¸öcomponent¶¼Ê¹ÓÃͳһ±ê×¼µÄAndroid.mk. Android.mkÎļþ±¾ÉíÊDZȽϼòµ¥µÄ£¬²»¹ýËü²¢²»ÊÇÎÒÃÇÊìϤµÄMakefile£¬¶øÊǾ¹ýÁËAndroid×ÔÉí±àÒëϵͳµÄºÜ¶à´¦Àí£¬Òò´ËÒªÕæÕýÀíÇå³þÆäÖеÄÁªÏµ»¹±È½Ï¸´ÔÓ£¬²»¹ýÕâÖÖ·½Ê½µÄºÃ´¦ÔÚÓÚ£¬± ......
ÉèÏëÖеÄCÍøÂç¿âioframe is a simple base socket library using libevent.http://blog.csdn.net/Solstice/archive/2010/03/10/5364096.aspx
°´ÕÕ
µÄ˼ÏëÌá½»µÄÒ»·Ý´úÂë¡£
ÉèÏëÖÐµÄ C++ ÍøÂç¿âḬ̈߳²È«£¬Ö§³Ö¶àºË¶àÏß³ÌÔÚ²»Ôö¼Ó¸´ÔӶȵÄǰÌáÏ¿ÉÒÔÖ§³Ö FreeBSD/Darwin£¬·½±ã½«À´Óà Mac ×÷Ϊ¿ª·¢Óûú£¬µ«²»ÎªËü×öÐÔÄÜ ......
C++ÌṩµÄ±àÒëÔ¤´¦Àí¹¦ÄÜÖ÷ÒªÓÐÒÔÏÂÈýÖÖ£º
¡¡¡¡£¨Ò»£© ºê¶¨Òå
¡¡¡¡£¨¶þ£© Îļþ°üº¬
¡¡¡¡£¨Èý£© Ìõ¼þ±àÒë
¡¡¡¡ÔÚC++ÖУ¬ÎÒÃÇÒ»°ãÓÃconst¶¨Òå·ûºÅ³£Á¿¡£ºÜÏÔÈ»£¬ÓÃconst¶¨Òå³£Á¿±ÈÓÃdefine¶¨Òå³£Á¿¸üºÃ¡£
¡¡¡¡ÔÚʹÓú궨ÒåʱӦעÒâµÄÊÇ£º
¡¡¡¡£¨a£© ÔÚÊéд#define ÃüÁîʱ£¬×¢Òâ<ºêÃû>ºÍ<×Ö·û´®>Ö®¼äÓÿո ......
1¡¢ int a=2,b=11,c=a+b++/a++; ÔòcֵΪ¶àÉÙ£¿
¡¾¿¼µã¡¿±àÂë¹æ·¶¡£
±íÃæÉÏ¿¼²ìÄã¶ÔÔËËã·ûÓÅÏȼ¶µÄÕÆÎճ̶ȣ¬µ«Êµ¼ÊÉÏÓÅÏȼ¶ÕâÐ©ÍæÒâºÜÄÑËÀ¼ÇÓ²±³µÃס£¿´ó¼ÒµÄÒɻ󲻾ÍÊÇÔËËã·ûµÄ½áºÏ˳Ðòô£¿ÄÇôÈçºÎÈ¥±ÜÃâÄØ£¿c=a+((b++)/(a++))²»¾ÍÐÐÁËô£¬ÆäʵÎÊÌâ±³ºó¿¼²ìµÄÊÇÄãµÄ±àÂë¹æ·¶£¬ÈçºÎдÇåÎúÒ×¶®µÄ´úÂ룬ÈçºÎÔÚÒ»¸öÍÅ ......
<!--
/* Font Definitions */
@font-face
{font-family:ËÎÌå;
panose-1:2 1 6 0 3 1 1 1 1 1;
mso-font-alt:SimSun;
mso-font-charset:134;
mso-generic-font-family:auto;
mso-font-pitch:variable;
mso-font-signature:3 135135232 16 0 262145 0;}
@font-face
{font-family:"\@ËÎÌå" ......